From a61fdafc1435e979767e4a5271c06917990f2e1d Mon Sep 17 00:00:00 2001 From: "bzbarsky%mit.edu" Date: Mon, 5 Mar 2007 00:15:46 +0000 Subject: [PATCH] Make sure to handle creation of a new continuation of the first-letter frame even if we pulled the first-letter frame from our next-in-flow. Bug 372553, r+sr=roc. git-svn-id: svn://10.0.0.236/trunk@221292 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/layout/generic/nsInlineFrame.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mozilla/layout/generic/nsInlineFrame.cpp b/mozilla/layout/generic/nsInlineFrame.cpp index 52776bfff4a..71afcc0bc37 100644 --- a/mozilla/layout/generic/nsInlineFrame.cpp +++ b/mozilla/layout/generic/nsInlineFrame.cpp @@ -429,7 +429,10 @@ nsInlineFrame::ReflowFrames(nsPresContext* aPresContext, while (!done) { PRBool reflowingFirstLetter = lineLayout->GetFirstLetterStyleOK(); PRBool isComplete; - frame = PullOneFrame(aPresContext, irs, &isComplete); + if (!frame) { // Could be non-null if we pulled a first-letter frame and + // it created a continuation, since we don't push those. + frame = PullOneFrame(aPresContext, irs, &isComplete); + } #ifdef NOISY_PUSHING printf("%p pulled up %p\n", this, frame); #endif @@ -450,6 +453,7 @@ nsInlineFrame::ReflowFrames(nsPresContext* aPresContext, break; } irs.mPrevFrame = frame; + frame = frame->GetNextSibling(); } } #ifdef DEBUG