Closed Bug 403004 Opened 18 years ago Closed 18 years ago

Crash [@ BuildTextRunsScanner::BuildTextRunForFrames] loading Tp2 www.maktoob.com

Categories

(Core :: Layout, defect)

x86
OpenSolaris
defect
Not set
critical

Tracking

()

RESOLVED FIXED

People

(Reporter: ginnchen+exoracle, Assigned: roc)

References

Details

(Keywords: crash, regression, testcase)

Crash Data

Attachments

(2 files)

See http://tinderbox.mozilla.org/showlog.cgi?log=Firefox-Ports/1194495780.1194496570.5233.gz --- called from signal handler with signal 11 (SIGSEGV) --- fd786036 int nsTextFrame::GetContentEnd()const (0) + 16 fd78846c void BuildTextRunsScanner::BuildTextRunForFrames(void*) (803f200, 803e198) + 86c fd786ee8 void BuildTextRunsScanner::FlushFrames(int) (803f200, 0) + f4 fd787517 void BuildTextRunsScanner::ScanFrame(nsIFrame*) (803f200, d0eff04) + 25b fd787481 void BuildTextRunsScanner::ScanFrame(nsIFrame*) (803f200, d078d4c) + 1c5 fd786a2f void BuildTextRuns(gfxContext*,nsTextFrame*,nsIFrame*,const nsLineList_iterator*) (c8f2628, cadfcfc, cadfc5c, 803f700) + 46b fd791fd1 void nsTextFrame::AddInlineMinWidth(nsIRenderingContext*,nsIFrame::InlineMinWidthData*) (cadfcfc, cb8a8f8, 803f6c0) + fd fd716e73 int nsBlockFrame::GetMinWidth(nsIRenderingContext*) (cadfc5c, cb8a8f8) + 177 Not reproducible with current www.maktoob.com. 1514 for (f = mappedFlow->mStartFrame; f != mappedFlow->mEndFrame; 1515 f = static_cast<nsTextFrame*>(f->GetNextInFlow())) { 1516 PRUint32 offset = iter.GetSkippedOffset(); 1517 iter.AdvanceOriginal(f->GetContentLength()); mStartFrame, mEndFrame are not null, but mStartFrame->GetNextInFlow() is null
Assignee: nobody → roc
Flags: blocking1.9?
Attached file testcase
minimal testcase
You've to use Arabic (Windows-1256) charset for the testcase.
Attachment #287820 - Attachment mime type: text/html → text/html; charset=windows-1256
Regression from the patch in bug 400826, I think. Patch coming up.
Blocks: 400826
No longer blocks: 336408
Flags: blocking1.9?
Attached patch fixSplinter Review
This fixes it. Simple really
Comment on attachment 287910 [details] [diff] [review] fix r+sr=bzbarsky
Attachment #287910 - Flags: superreview+
Attachment #287910 - Flags: review+
Basically, these mappedFlows cover a range of text frames in a continuation chain. In rare situations, there's a non-fluid continuation boundary inside the range. (These situations are rare because normally we change direction at a continuation boundary, so we would end the mappedflow and start a new textrun, but in some cases like this one the bidi resolver inserts a continuation boundary even though the direction doesn't change.)
checked in.
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Flags: in-testsuite?
Crash Signature: [@ BuildTextRunsScanner::BuildTextRunForFrames]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: