Closed Bug 1343362 Opened 8 years ago Closed 8 years ago

stylo: Assertion failure: aRestyleHint == 0 in dom/xbl/crashtests/493123-1.xhtml

Categories

(Core :: CSS Parsing and Computation, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla54
Tracking Status
firefox54 --- fixed

People

(Reporter: manishearth, Assigned: bholley)

References

Details

Attachments

(2 files)

Attached file backtrace
(marking the test as skip for now) Top of the stack: Assertion failure: aRestyleHint == 0, at /Users/manishearth/mozilla/higgsino/layout/base/ServoRestyleManager.cpp:52 LLVM ERROR: IO failure on output stream. fatal error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: internal objdump command failed #01: mozilla::ServoRestyleManager::PostRestyleEvent(mozilla::dom::Element*, nsRestyleHint, nsChangeHint) (ServoRestyleManager.cpp:52, in XUL) #02: mozilla::RestyleManager::PostRestyleEvent(mozilla::dom::Element*, nsRestyleHint, nsChangeHint) (RestyleManagerInlines.h:24, in XUL) #03: nsIPresShell::RestyleForCSSRuleChanges() (PresShell.cpp:4583, in XUL) #04: mozilla::PresShell::EndUpdate(nsIDocument*, unsigned int) (PresShell.cpp:2500, in XUL) (Full backtrace attached) 13:54 < bholley> Manishearth: the basic problem in your stack is that frame reconstruction causes XBL to be uninstalled, which alters the set of stylesheets
I think we should just allow restyle hints to be posted during change hint processing. I'll attach a patch.
Assignee: nobody → bobbyholley
MozReview-Commit-ID: 6ZU24tLQCjV
Attachment #8842699 - Flags: review?(emilio+bugs)
Comment on attachment 8842699 [details] [diff] [review] Allow restyle hints to be posted during change hint handling. v1 Review of attachment 8842699 [details] [diff] [review]: ----------------------------------------------------------------- r=me, though I hope we could have stronger assertions about how layout and style interact, sigh. Thanks for fixing this! :) ::: layout/base/ServoRestyleManager.cpp @@ +379,5 @@ > > + > + // Perform the Servo traversal, and the post-traversal if required. We do this > + // in a loop because certain rare paths in the frame constructor (like > + // uninstalling XBL bindings) can trigger additional style validations. This is pretty unfortunate :(.
Attachment #8842699 - Flags: review?(emilio+bugs) → review+
Pushed by bholley@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1029e1a5b03d Allow restyle hints to be posted during change hint handling. r=emilio
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: