Closed Bug 621841 Opened 9 years ago Closed 9 years ago

"ASSERTION: Reflow hint bits set without actually asking for a reflow"

Categories

(Core :: Layout: Images, Video, and HTML Frames, defect, P1)

x86
macOS
defect

Tracking

()

RESOLVED FIXED
mozilla5

People

(Reporter: jruderman, Assigned: bzbarsky)

References

(Blocks 2 open bugs)

Details

(Keywords: assertion, testcase)

Attachments

(3 files)

Attached file testcase
###!!! ASSERTION: Must have data if restyle bit is set: 'gotData', file layout/base/RestyleTracker.cpp, line 300

###!!! ASSERTION: Reflow hint bits set without actually asking for a reflow: '!(aHint & nsChangeHint_ReflowFrame) || (aHint & nsChangeHint_NeedReflow)', file layout/base/nsStyleChangeList.cpp, line 100

###!!! ASSERTION: Reflow hint bits set without actually asking for a reflow: '!(hint & nsChangeHint_ReflowFrame) || (hint & nsChangeHint_NeedReflow)', file layout/base/nsCSSFrameConstructor.cpp, line 8000
Attached file stack traces
I can reproduce that first assertion, but not the other two.  I'll post a patch for that first assert, but could you check whether it fixes the other two for you?
Assignee: nobody → bzbarsky
Priority: -- → P1
Whiteboard: [need review]
What is frameset doing that's special here and requires all this bit-mangling?
It handles constructing frames for its children by hand instead of going through the frame constructor.  From the frame constructor's point of view, frameset is a leaf frame...

The code I'm adding here is basically a copy of what we do in ProcessChildren in the frame constructor, like the comments say.
Comment on attachment 500248 [details] [diff] [review]
Clear restyle flags in frameset kids when we process them.

ok, r=dbaron
Attachment #500248 - Flags: review?(dbaron) → review+
Whiteboard: [need review] → [need gk2 ship]
Yes, this patch fixes all the assertions for me.
http://hg.mozilla.org/projects/birch/rev/fc9ae5be228c
Whiteboard: [need gk2 ship] → fixed-in-birch
https://hg.mozilla.org/mozilla-central/rev/fc9ae5be228c
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Whiteboard: fixed-in-birch
Target Milestone: --- → mozilla2.2
Flags: in-testsuite+
Product: Core → Core Graveyard
Component: Layout: HTML Frames → Layout: Images
Product: Core Graveyard → Core
You need to log in before you can comment on or make changes to this bug.