Closed Bug 567292 Opened 11 years ago Closed 11 years ago

"ASSERTION: Ancestors of nodes with frames to be constructed lazily should have frames" with frameset, xbl

Categories

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

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: jruderman, Assigned: tnikkel)

References

(Blocks 2 open bugs)

Details

(Keywords: assertion, testcase)

Attachments

(2 files)

Attached file testcase
###!!! ASSERTION: Ancestors of nodes with frames to be constructed lazily should have frames: 'content->GetPrimaryFrame() || bogusPrimaryFrame || (content->GetFlattenedTreeParent() && content->GetFlattenedTreeParent()->GetPrimaryFrame() && content->GetFlattenedTreeParent()->GetPrimaryFrame()->IsLeaf())', file /Users/jruderman/mozilla-central/layout/base/nsCSSFrameConstructor.cpp, line 6252
Attached patch patchSplinter Review
These assertions in this function are getting out of hand. Every time I say "ok, this time we'll just make them a little more complex, but after that we'd better think of a better plan."

In this case the anonymous children are nested deeper and so we need to deal with arbitrarily deeply nesting under leaf frames. To do this we keep track of the assert conditions in the loop and reset them if we hit a leaf frame and assert if they are still set after the loop is done.
Assignee: nobody → tnikkel
Attachment #446649 - Flags: review?(bzbarsky)
Comment on attachment 446649 [details] [diff] [review]
patch

r=me, but this is starting to get ridicuous.  I almost feel sorry I asked for those asserts... ;)
Attachment #446649 - Flags: review?(bzbarsky) → review+
http://hg.mozilla.org/mozilla-central/rev/da3c328f89a8
Status: NEW → RESOLVED
Closed: 11 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
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.