Insanely large height resulting from -moz-inline-box and height: 200%

RESOLVED WORKSFORME

Status

()

Core
Layout
RESOLVED WORKSFORME
11 years ago
9 years ago

People

(Reporter: Jesse Ruderman, Unassigned)

Tracking

(Blocks: 1 bug, {assertion, testcase})

Trunk
x86
Mac OS X
assertion, testcase
Points:
---
Bug Flags:
in-testsuite +

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments)

(Reporter)

Description

11 years ago
Created attachment 271354 [details]
testcase

The page's height comes out as 17 million pixels, and there are several assertions:

###!!! ASSERTION: bad status: 'NS_FRAME_IS_COMPLETE(status)', file /Users/jruderman/trunk/mozilla/layout/generic/nsFrame.cpp, line 6257

###!!! ASSERTION: A Box's child is constantly growing!!!!!: 'passes < 10', file /Users/jruderman/trunk/mozilla/layout/xul/base/src/nsSprocketLayout.cpp, line 627
Created attachment 271537 [details]
testcase 2: reduced %, added color. triggers "constantly growing" assertion

I reduced the percentages in Jesse's testcase to see what the cutoff point was for buggy behavior/assertions. (To get the "constantly growing" assertion, it's 101% and 100% for the table and div, as shown in the testcase.)  I also added colors to make it easier to see where everything is.
Additional note: trunk doesn't seem to be making testcase #2 (attachment 271537 [details]) tall enough.  In Firefox 2.0, IE, and Opera, the green table is as tall as the browser window, but in Trunk, the green table is 221.883px regardless of the window size.  (I'm guessing this is because we give up calculating height at some point, probably because of the same thing that's causing the assertion.)

Also, a vertical resize of the window triggers something interesting in both testcases:

 - testcase 1: prints this message on vertical resize
     nsBlockReflowContext: Block(body)(1)@0x8e37994 metrics=26280,1073741824!

 - testcase 2: triggers the "Constantly growing" assertion on vertical resize
One more note, about the height of testcase 1:
(this is probably obvious for people who work on layout, but posting it anyway)

17 million pixels * 60 app-units per pixel = 2^30 app-units
                                           = nscoord_MAX app-units
(Reporter)

Comment 4

10 years ago
I don't see the "bad status" assertion with this testcase any more.  I still see the "constantly growing" assertion, though.
(Reporter)

Comment 5

9 years ago
WFM.  No assertions, no scrollbar.
Status: NEW → RESOLVED
Last Resolved: 9 years ago
Resolution: --- → WORKSFORME
(Reporter)

Comment 6

9 years ago
Crashtest: http://hg.mozilla.org/mozilla-central/rev/b64a7e4a35e2
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.