Chromium Code Reviews| Index: Source/WebCore/rendering/RenderBlock.cpp |
| diff --git a/Source/WebCore/rendering/RenderBlock.cpp b/Source/WebCore/rendering/RenderBlock.cpp |
| index 77e028a4049b6c3f158cb1b14b4720987ab13762..bda91e41f6bb09e0e459e12ebcae1ae30d0e2bb0 100644 |
| --- a/Source/WebCore/rendering/RenderBlock.cpp |
| +++ b/Source/WebCore/rendering/RenderBlock.cpp |
| @@ -2595,6 +2595,12 @@ void RenderBlock::layoutBlockChild(RenderBox* child, MarginInfo& marginInfo, Lay |
| child->layoutIfNeeded(); |
| } |
| + // Dialog requires special positioning and must lay itself out. |
| + if (child->isDialog()) { |
| + child->setNeedsLayout(true); |
| + child->layout(); |
| + } |
| + |
| // We are no longer at the top of the block if we encounter a non-empty child. |
| // This has to be done after checking for clear, so that margins can be reset if a clear occurred. |
| if (marginInfo.atBeforeSideOfBlock() && !child->isSelfCollapsingBlock()) |
| @@ -2637,7 +2643,9 @@ void RenderBlock::layoutBlockChild(RenderBox* child, MarginInfo& marginInfo, Lay |
| setLogicalHeight(newHeight); |
| } |
| - ASSERT(view()->layoutDeltaMatches(oldLayoutDelta)); |
|
falken
2013/04/09 10:35:51
Unfortunately this ASSERT gets tripped even with t
|
| + if (!view()->layoutDeltaMatches(oldLayoutDelta)) { |
| + fprintf(stderr, "layout delta doesn't match\n"); |
| + } |
| } |
| void RenderBlock::simplifiedNormalFlowLayout() |