Closed Bug 586973 Opened 9 years ago Closed 9 years ago

Hang with hr, floated generated content and -moz-column-count

Categories

(Core :: Layout, defect, critical)

x86
Windows 7
defect
Not set
critical

Tracking

()

VERIFIED FIXED
Tracking Status
blocking2.0 --- final+

People

(Reporter: martijn.martijn, Assigned: dbaron)

References

Details

(Keywords: hang, regression, testcase)

Attachments

(2 files)

Attached file testcase
See testcase, which hangs current trunk build. This regressed between 2010-08-04 and 2010-08-08, so I guess a regression from bug 563584.
Assignee: nobody → dbaron
blocking2.0: --- → final+
The infinite loop is in nsColumnSetFrame::ReflowChildren, creating more next-in-flows.
Attached patch patchSplinter Review
The problem was that for the first of the two PushFloatPastBreak calls, we weren't checking the conditions under which we're required to place something in order to avoid an infinite push loop.

This factors those conditions out into a |mustPlaceFloat| variable, and checks them before the first PushFloatPastBreak call.  The |pushedDown| check in the old code is equivalent to the |mustPlaceFloat = PR_FALSE| in the new code, which sets mustPlaceFloat to false when we push down.
Attachment #467315 - Flags: review?(roc)
http://hg.mozilla.org/mozilla-central/rev/5daf8744eed1
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Verified fixed, using:
https://bugzilla.mozilla.org/attachment.cgi?id=465640
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.