Closed Bug 481136 Opened 16 years ago Closed 15 years ago

"ASSERTION: Why is the root in mDirtyRoots already?" with ogg <object>

Categories

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

defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: jruderman, Unassigned)

References

Details

(Keywords: assertion, testcase)

Attachments

(4 files)

Attached file testcase
###!!! ASSERTION: Why is the root in mDirtyRoots already?: '!mDirtyRoots.Contains(rootFrame)', file /Users/jruderman/central/layout/base/nsPresShell.cpp, line 2453
Attached file stack trace
Component: Video/Audio → Layout: Block and Inline
OS: Mac OS X → All
QA Contact: video.audio → layout.block-and-inline
Hardware: x86 → All
http://mxr.mozilla.org/mozilla-central/source/layout/base/nsPresShell.cpp#2591 Tracing PresShell::InitialReflow shows that the root frame is reflowed several times before we reach this line. I've included the stacks for when the root frame is added to mDirtyRoots. The cause in this case is calls to FrameNeedsReflow for ProgressMeter and Slider frames that are children of nsVideoFrame which isn't a reflow root so it propagates all the way to the root frame.
Attached patch wipSplinter Review
I don't think we need to schedule a reflow for the root frame here if it was reflowed already. BTW, should we make nsVideoFrame a reflow root?
Blocks: 418511
WFM. Dunno if Mats' analysis indicates a bug that might still exist.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WORKSFORME
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: