Closed Bug 370794 Opened 17 years ago Closed 17 years ago

[FIX]"ASSERTION: used padding property missing (out of memory?)" with overflow: hidden and position: fixed

Categories

(Core :: Layout, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla1.9alpha3

People

(Reporter: jruderman, Assigned: bzbarsky)

References

Details

(Keywords: assertion, testcase)

Attachments

(3 files)

###!!! ASSERTION: used padding property missing (out of memory?): 'p', file /Users/jruderman/trunk/mozilla/layout/generic/nsFrame.cpp, line 764

This is the same assertion that showed up in bug 366952, which dbaron fixed.
Attached file testcase
Attachment #255633 - Flags: superreview?(dbaron)
Attachment #255633 - Flags: review?(dbaron)
Assignee: nobody → bzbarsky
OS: Mac OS X → All
Hardware: PC → All
Summary: "ASSERTION: used padding property missing (out of memory?)" with overflow: hidden and position: fixed → [FIX]"ASSERTION: used padding property missing (out of memory?)" with overflow: hidden and position: fixed
Target Milestone: --- → mozilla1.9alpha3
Who's passing in an |aPadding| without overriding nsIFrame::GetUsedPadding?
nsHTMLScrollFrame::ReflowScrolledFrame.

I'm not sure how easy it is to override it, since there are so many different things the scrolled frame could be.  I suppose we could just put that in the nsFrame GetUsedPadding or something....
::-moz-scrolled-content already has padding:inherit, so I'm not even sure why that code is needed.
Because inheriting a percentage does the wrong thing -- it computes the percentage using the scrollframe as the containing block.  See the blame for that Init() call in nsHTMLScrollFrame::ReflowScrolledFrame.
Attachment #255633 - Flags: superreview?(dbaron)
Attachment #255633 - Flags: superreview+
Attachment #255633 - Flags: review?(dbaron)
Attachment #255633 - Flags: review+
Hmm.  Though I guess this means that all table rows, etc, will end up with these props, even though they don't need them.  Maybe I should put this code in nsGfxScrollFrame instead?
That would work -- especially if you set the property before the reflow state is constructed, since there could be a GetUsedPadding call later in the nsHTMLReflowState constructor.
Attached patch Do thatSplinter Review
Attachment #255720 - Flags: superreview?(dbaron)
Attachment #255720 - Flags: review?(dbaron)
Attachment #255720 - Flags: superreview?(dbaron)
Attachment #255720 - Flags: superreview+
Attachment #255720 - Flags: review?(dbaron)
Attachment #255720 - Flags: review+
Fixed.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Crashtest checked in.
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: