Closed Bug 217911 Opened 21 years ago Closed 11 years ago

###!!! ASSERTION: content (if non-null) must be element: '!aParentContent || aParentContent->IsContentOfType(nsIContent::eELEMENT)', file i:/build/mozilla/content/base/src/nsStyleSet.cpp, line 1328

Categories

(Core :: Layout: Block and Inline, defect, P5)

x86
Windows 2000
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: timeless, Unassigned)

References

Details

(Keywords: assertion)

viewer, cvs debug build from mid last week. i was playing w/ edit mode. i've hit
a bunch of other assertions already. this is my first linelayout assert.

page: default viewer page.

###!!! ASSERTION: content (if non-null) must be element: '!aParentContent ||
aParentContent->IsContentOfType(nsIContent::eELEMENT)', file
i:/build/mozilla/content/base/src/nsStyleSet.cpp, line 1328

This is the second time i've hit this assert.

-	aParentContent	0x0815b990
|+	[nsTextNode]	{...}
\+	nsISupports	{...}
-	aPresContext	0x091c73f0
|+	[GalleyContext]	{...}
\+	nsISupports	{...}
	nsIContent::eELEMENT	2

nsDebug::Assertion(const char * 0x05dfd020, const char * 0x05dfcfd4, const char
* 0x05dfcfa0, int 1328) line 109
StyleSetImpl::ProbePseudoStyleFor(nsIPresContext * 0x091c73f0, nsIContent *
0x0815b990, nsIAtom * 0x00a0c820 {???}, nsStyleContext * 0x01150794) line 1328 +
53 bytes
nsPresContext::ProbePseudoStyleContextFor(nsIContent * 0x0815b990, nsIAtom *
0x00a0c820 {???}, nsStyleContext * 0x01150794) line 985 + 45 bytes
nsLayoutUtils::HasPseudoStyle(nsIContent * 0x0815b990, nsStyleContext *
0x01150794, nsIAtom * 0x00a0c820 {???}, nsIPresContext * 0x091c73f0) line 128 +
27 bytes
nsCSSFrameConstructor::HaveFirstLetterStyle(nsIPresContext * 0x091c73f0,
nsIContent * 0x0815b990, nsStyleContext * 0x01150794) line 11701 + 24 bytes
nsCSSFrameConstructor::ContentChanged(nsCSSFrameConstructor * const 0x09173570,
nsIPresContext * 0x091c73f0, nsIContent * 0x0815b990, nsISupports * 0x00000000)
line 9944 + 17 bytes
StyleSetImpl::ContentChanged(StyleSetImpl * const 0x09170210, nsIPresContext *
0x091c73f0, nsIContent * 0x0815b990, nsISupports * 0x00000000) line 1669
PresShell::ContentChanged(PresShell * const 0x0917a09c, nsIDocument *
0x091c47c0, nsIContent * 0x0815b990, nsISupports * 0x00000000) line 5275 + 36 bytes
nsDocument::ContentChanged(nsDocument * const 0x091c47c0, nsIContent *
0x0815b990, nsISupports * 0x00000000) line 2020
nsGenericDOMDataNode::SetText(nsGenericDOMDataNode * const 0x0815b990, const
unsigned short * 0x09188be0, int 163, int 1) line 1219
nsGenericDOMDataNode::ReplaceData(unsigned int 0, unsigned int 53, const
nsAString & {...}) line 528 + 25 bytes
nsGenericDOMDataNode::DeleteData(unsigned int 0, unsigned int 53) line 480 + 26
bytes
nsTextNode::DeleteData(nsTextNode * const 0x0815b9ac, unsigned int 0, unsigned
int 53) line 59 + 22 bytes
DeleteTextTxn::DoTransaction(DeleteTextTxn * const 0x0918c6a0) line 97 + 43 bytes
nsTransactionItem::DoTransaction() line 181 + 18 bytes
nsTransactionManager::BeginTransaction(nsITransaction * 0x0918c6a0) line 1079 +
11 bytes
nsTransactionManager::DoTransaction(nsTransactionManager * const 0x0916d800,
nsITransaction * 0x0918c6a0) line 133 + 18 bytes
nsEditor::DoTransaction(nsEditor * const 0x08177d80, nsITransaction *
0x0918c6a0) line 531 + 30 bytes
nsEditor::DeleteText(nsEditor * const 0x08177d80, nsIDOMCharacterData *
0x0815b9ac, unsigned int 0, unsigned int 53) line 2678 + 16 bytes
nsHTMLEditor::DeleteText(nsHTMLEditor * const 0x08177d80, nsIDOMCharacterData *
0x0815b9ac, unsigned int 0, unsigned int 53) line 4038 + 21 bytes
nsHTMLEditRules::WillDeleteSelection(nsISelection * 0x0917b080, short 2, int *
0x0012ef28, int * 0x0012ef64) line 2391 + 45 bytes
nsHTMLEditRules::WillDoAction(nsHTMLEditRules * const 0x091682c4, nsISelection *
0x0917b080, nsRulesInfo * 0x0012ef2c, int * 0x0012ef28, int * 0x0012ef64) line
591 + 31 bytes
nsPlaintextEditor::DeleteSelection(nsPlaintextEditor * const 0x08177d80, short
2) line 863 + 59 bytes
nsTextEditorKeyListener::KeyPress(nsTextEditorKeyListener * const 0x0916d710,
nsIDOMEvent * 0x05eb4d14) line 203
continuing past this assert i get:

###!!! ASSERTION: non-element leaked into SelectorMatches: '!aContent ||
aContent->IsContentOfType(nsIContent::eELEMENT)', file
i:/build/mozilla/content/html/style/src/nsCSSStyleSheet.cpp, line 3167

nsDebug::Assertion(const char * 0x05e32398, const char * 0x05e32358, const char
* 0x05e3231c, int 3167) line 109
RuleProcessorData::RuleProcessorData(nsIPresContext * 0x091c73f0, nsIContent *
0x0815b990, nsRuleWalker * 0x091871c0, nsCompatibility * 0x00000000) line 3167 +
53 bytes
PseudoRuleProcessorData::PseudoRuleProcessorData(nsIPresContext * 0x091c73f0,
nsIContent * 0x0815b990, nsIAtom * 0x00a0c820 {???}, nsICSSPseudoComparator *
0x00000000, nsRuleWalker * 0x091871c0) line 125
PseudoRulesMatchingData::PseudoRulesMatchingData(nsIPresContext * 0x091c73f0,
nsIAtom * 0x00a0d230 {???}, nsIContent * 0x0815b990, nsIAtom * 0x00a0c820 {???},
nsICSSPseudoComparator * 0x00000000, nsRuleWalker * 0x091871c0) line 1254 + 35 bytes
StyleSetImpl::ProbePseudoStyleFor(nsIPresContext * 0x091c73f0, nsIContent *
0x0815b990, nsIAtom * 0x00a0c820 {???}, nsStyleContext * 0x01150794) line 1342
nsPresContext::ProbePseudoStyleContextFor(nsIContent * 0x0815b990, nsIAtom *
0x00a0c820 {???}, nsStyleContext * 0x01150794) line 985 + 45 bytes

And then (4 times):
###!!! ASSERTION: content (if present) must be element: '!aData->mContent ||
aData->mContent->IsContentOfType(nsIContent::eELEMENT)', file
i:/build/mozilla/content/html/style/src/nsCSSStyleSheet.cpp, line 4064
nsDebug::Assertion(const char * 0x05e329dc, const char * 0x05e32990, const char
* 0x05e32954, int 4064) line 109
CSSRuleProcessor::RulesMatching(CSSRuleProcessor * const 0x0818be50,
PseudoRuleProcessorData * 0x0012e624, nsIAtom * 0x00a0d230 {???}) line 4064 + 62
bytes
EnumPseudoRulesMatching(nsISupports * 0x0818be50, void * 0x0012e624) line 1266
nsSupportsArray::EnumerateForwards(nsSupportsArray * const 0x0917b110, int
(nsISupports *, void *)* 0x059a6cd0 EnumPseudoRulesMatching(nsISupports *, void
*), void * 0x0012e624) line 643 + 20 bytes
StyleSetImpl::FileRules(int (nsISupports *, void *)* 0x059a6cd0
EnumPseudoRulesMatching(nsISupports *, void *), RuleProcessorData * 0x0012e624)
line 1057
StyleSetImpl::ProbePseudoStyleFor(nsIPresContext * 0x091c73f0, nsIContent *
0x0815b990, nsIAtom * 0x00a0c820 {???}, nsStyleContext * 0x01150794) line 1344
nsPresContext::ProbePseudoStyleContextFor(nsIContent * 0x0815b990, nsIAtom *
0x00a0c820 {???}, nsStyleContext * 0x01150794) line 985 + 45 bytes

In another instance i chained to one of the other asserts, but not before
hitting and not catching a stack for (sorry):
###!!! ASSERTION: out of bounds: 'PRInt32(aIndex) >= 0 && aIndex <= length',
file i:/build/mozilla/layout/html/style/src/nsChildIterator.h, line 132
Break: at file i:/build/mozilla/layout/html/style/src/nsChildIterator.h, line 132
###!!! ASSERTION: prev sibling not in line list: 'Not Reached', file
i:/build/mozilla/layout/html/base/src/nsBlockFrame.cpp, line 4679


Generally i'm deleting from top right to bottom left, but once i deleted from
bottom left to top right, and sometimes it doesn't assert. i can't really read
what is in the page (some unrelated amusing bugs) and it's repetitive anyway so
it wouldn't be useful for me to try to copy it.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P5
Assignee: layout.block-and-inline → nobody
QA Contact: ian → layout.block-and-inline
The assertion was removed as part of Bug 562688.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.