Closed
Bug 386812
Opened 17 years ago
Closed 17 years ago
Crash [@ BuildTextRunsScanner::FindBoundaries] with large padding, floats, white-space: pre
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: jruderman, Assigned: roc)
References
Details
(Keywords: assertion, crash, testcase)
Crash Data
Attachments
(2 files)
(deleted),
text/html
|
Details | |
(deleted),
patch
|
smontagu
:
review+
|
Details | Diff | Splinter Review |
Loading the testcase triggers:
###!!! ASSERTION: Frame is not in the block!!!: 'line != block->end_lines()', file /Users/jruderman/trunk/mozilla/layout/generic/nsTextFrameThebes.cpp, line 1117
###!!! ASSERTION: running past end: 'mCurrent != mListLink', file /Users/jruderman/trunk/mozilla/layout/base/../generic/nsLineBox.h, line 619
Crash [@ BuildTextRunsScanner::FindBoundaries]
Reporter | ||
Comment 1•17 years ago
|
||
Reporter | ||
Comment 2•17 years ago
|
||
I'm hitting this crash a lot, enough to make it difficult to look for other bugs.
Assignee | ||
Comment 3•17 years ago
|
||
What's happening here is that because the padding eats up all available space, we don't have room to place any floats. This causes nsBlockReflowState::FlowAndPlaceFloat to fail, returning false, which is interpreted as the float not fitting on the page, so we create overflow. Then we crash because the textrun-related code can't handle being in overflow.
I'll fix the textrun code to handle overflow situations, but we should also fix the underlying bug. I think basically we need to be able to return zero-width but nonzero height available space and force floats to fit into it.
Assignee | ||
Comment 4•17 years ago
|
||
This makes BuildTextRunForFrames (and hence EnsureTextRun) work even when the target frame is in the overflow-list of a block.
Updated•17 years ago
|
Attachment #270988 -
Flags: review?(smontagu) → review+
Assignee | ||
Comment 5•17 years ago
|
||
Sorry, this was the wrong patch!
Reporter | ||
Comment 7•17 years ago
|
||
This testcase no longer crashes/asserts.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Updated•17 years ago
|
Flags: in-testsuite?
Updated•13 years ago
|
Crash Signature: [@ BuildTextRunsScanner::FindBoundaries]
You need to log in
before you can comment on or make changes to this bug.
Description
•