Closed
Bug 779430
Opened 13 years ago
Closed 9 years ago
"Bad readystate" assertion in DocumentViewerImpl::LoadComplete
Categories
(Core :: DOM: Navigation, defect)
Core
DOM: Navigation
Tracking
()
RESOLVED
FIXED
mozilla46
Tracking | Status | |
---|---|---|
firefox46 | --- | fixed |
People
(Reporter: jruderman, Assigned: smaug)
References
Details
(Keywords: assertion, regression, testcase)
Attachments
(7 files)
Assertion failure: mDocument->IsXUL() || mDocument->GetReadyStateEnum() == nsIDocument::READYSTATE_INTERACTIVE || (mDocument->GetReadyStateEnum() == nsIDocument::READYSTATE_UNINITIALIZED && NS_IsAboutBlank(mDocument->GetDocumentURI())) (Bad readystate), at layout/base/nsDocumentViewer.cpp:1017
This instance of this assertion was added in:
changeset: fa6a84e7ba53
user: Henri Sivonen
date: Fri Jul 27 16:35:09 2012 +0300
summary: Bug 775467 - Make readyState progress through all states without duplicate transitions. r=bzbarsky.
Reporter | ||
Comment 1•13 years ago
|
||
Comment 2•13 years ago
|
||
Does document.documentElement.style.counterReset = "egg"; involve XBL somehow?
Comment 3•13 years ago
|
||
Note that bug 779100 is a case of bogosity known at the time of landing bug 775467. It appears that our "load" event firing logic is a very broken in interesting edge cases (such as this case here and the case in that networking bug). :-(
Comment 4•13 years ago
|
||
There shouldn't be any XBL involved there, no.
And I'm not sure why the new tab part is relevant...
Comment 5•12 years ago
|
||
I see this on
http://video.qip.ru/live/sexy2012/
http://ziza.qip.ru/category/girls/
for Aurora, Nightly and Windows, Linux, Mac. You may need to load them multiple times to see it.
OS: Mac OS X → All
Hardware: x86_64 → All
Comment 6•12 years ago
|
||
Happened twice in the last day to me. I was scrolling through a Google Groups page I think; I honestly don't remember what I was exactly doing other than trying to scroll as the page loaded.
GetReadyStateEnum() is READYSTATE_COMPLETE
IsXUL() is inlined, but:
(gdb) p ((nsIDocument*) mDocument.mRawPtr)->mIsXUL
$5 = false
I believe I was trying to mousewheel scroll on a document I had just opened, but I'm not 100% sure
I'll attach a GDB log with dumps of the backtrace, document, docshell, etc.
Comment 7•12 years ago
|
||
I *may* have been loading https://groups.google.com/forum/?fromgroups=#!topic/mozilla.dev.platform/vS877oA_HSA
Comment 8•12 years ago
|
||
Yup, crashed again when leaving that page via "Back" to a bugzilla bug
Comment 9•12 years ago
|
||
Comment 10•12 years ago
|
||
Comment 11•12 years ago
|
||
Updated•12 years ago
|
Blocks: sync-about-blank
Updated•12 years ago
|
No longer blocks: sync-about-blank
Reporter | ||
Comment 12•12 years ago
|
||
Still happens on trunk:
###!!! ASSERTION: Bad readystate: 'mDocument->IsXUL() || mDocument->GetReadyStateEnum() == nsIDocument::READYSTATE_INTERACTIVE || (mDocument->GetReadyStateEnum() == nsIDocument::READYSTATE_UNINITIALIZED && NS_IsAboutBlank(mDocument->GetDocumentURI()))', file ../../../layout/base/nsDocumentViewer.cpp, line 1029
It was made non-fatal in bug 807442.
Comment 13•9 years ago
|
||
still reproduced on win 7 debug build based on m-c tip from today
Assignee | ||
Comment 15•9 years ago
|
||
So nsDocShell::GetRestoringDocument is lying us here. We actually do restore the testcase document as expected, but for some reason DocShell says we're not doing that.
And the issue happens only first time the button is clicked.
Investigating.
Assignee | ||
Updated•9 years ago
|
Assignee: nobody → bugs
Flags: needinfo?(bugs)
Assignee | ||
Comment 16•9 years ago
|
||
bfcache handling in docshell really doesn't expect layout flushes (which may add onload blockers, like in this case XBL does that) when this code is called at the end of restoration. Adding async onload blockers make bfcache restoration
behave as if normal page was loaded, which means we try to set the readyState again.
I tried to write mochitest for this, but something in the framework affects to the timing so that the assertion
isn't triggered without the patch.
Attachment #8708544 -
Flags: review?(bzbarsky)
Assignee | ||
Comment 17•9 years ago
|
||
(nor with the patch)
https://treeherder.mozilla.org/#/jobs?repo=try&revision=8e01843bdc85
Comment 18•9 years ago
|
||
Comment on attachment 8708544 [details] [diff] [review]
patch
r=me
Attachment #8708544 -
Flags: review?(bzbarsky) → review+
Comment 19•9 years ago
|
||
Assignee | ||
Comment 20•9 years ago
|
||
One can probably still find ways to trigger the assertion, but please file new bugs for new cases.
Comment 21•9 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox46:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla46
You need to log in
before you can comment on or make changes to this bug.
Description
•