Leave the placeholder's pointer to the out-of-flow intact because the float cache depends on it later on. b=348688 r=bzbarsky sr=roc
This commit is contained in:
@@ -523,34 +523,6 @@ nsLineBox::RemoveFloat(nsIFrame* aFrame)
|
||||
return PR_FALSE;
|
||||
}
|
||||
|
||||
void
|
||||
nsLineBox::RemovePlaceholderDescendantsOf(nsIFrame* aFrame)
|
||||
{
|
||||
if (IsInline() && mInlineData) {
|
||||
nsFloatCache* fc = mInlineData->mFloats.Head();
|
||||
while (fc) {
|
||||
nsIFrame* frame = fc->mPlaceholder;
|
||||
while (frame && frame != aFrame) {
|
||||
if (frame->IsFloatContainingBlock()) {
|
||||
frame = nsnull;
|
||||
break;
|
||||
}
|
||||
frame = frame->GetParent();
|
||||
}
|
||||
if (NS_UNLIKELY(frame != nsnull)) {
|
||||
nsFloatCache* next = fc->Next();
|
||||
mInlineData->mFloats.Remove(fc);
|
||||
delete fc;
|
||||
MaybeFreeData();
|
||||
fc = next;
|
||||
}
|
||||
else {
|
||||
fc = fc->Next();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
nsLineBox::SetCombinedArea(const nsRect& aCombinedArea)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user