diff options
Diffstat (limited to 'layout/generic/nsContainerFrame.cpp')
-rw-r--r-- | layout/generic/nsContainerFrame.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/layout/generic/nsContainerFrame.cpp b/layout/generic/nsContainerFrame.cpp index abf687c9b..3ff6c9bf1 100644 --- a/layout/generic/nsContainerFrame.cpp +++ b/layout/generic/nsContainerFrame.cpp @@ -1031,6 +1031,7 @@ nsContainerFrame::ReflowChild(nsIFrame* aKidFrame, if (0 == (aFlags & NS_FRAME_NO_MOVE_VIEW)) { PositionFrameView(aKidFrame); + PositionChildViews(aKidFrame); } // Reflow the child frame @@ -1074,6 +1075,7 @@ nsContainerFrame::ReflowChild(nsIFrame* aKidFrame, if (0 == (aFlags & NS_FRAME_NO_MOVE_VIEW)) { PositionFrameView(aKidFrame); + PositionChildViews(aKidFrame); } // Reflow the child frame @@ -1925,6 +1927,10 @@ nsContainerFrame::RenumberFrameAndDescendants(int32_t* aOrdinal, nsIFrame *f = bullet; do { nsIFrame *parent = f->GetParent(); + if (!parent) { + // We may have an orphan situation in some corner cases. + break; + } parent->ChildIsDirty(f); f = parent; } while (f != listItem); |