Index: Source/core/rendering/RenderFlexibleBox.cpp |
diff --git a/Source/core/rendering/RenderFlexibleBox.cpp b/Source/core/rendering/RenderFlexibleBox.cpp |
index faff63cc332575ce84bb1b4cb80c6037e17c17d7..25956e075f1ea29a132543a0ae5fc7ce75e3a8ef 100644 |
--- a/Source/core/rendering/RenderFlexibleBox.cpp |
+++ b/Source/core/rendering/RenderFlexibleBox.cpp |
@@ -611,12 +611,11 @@ LayoutUnit RenderFlexibleBox::preferredMainAxisContentExtentForChild(RenderBox& |
if (preferredMainAxisExtentDependsOnLayout(flexBasis, hasInfiniteLineLength)) { |
LayoutUnit mainAxisExtent; |
if (hasOrthogonalFlow(child)) { |
- if (child.needsLayout() || relayoutChildren) { |
+ if (child.needsLayout() || relayoutChildren || !m_intrinsicSizeAlongMainAxis.contains(&child)) { |
m_intrinsicSizeAlongMainAxis.remove(&child); |
child.forceChildLayout(); |
m_intrinsicSizeAlongMainAxis.set(&child, child.logicalHeight()); |
} |
- ASSERT(m_intrinsicSizeAlongMainAxis.contains(&child)); |
mainAxisExtent = m_intrinsicSizeAlongMainAxis.get(&child); |
} else { |
mainAxisExtent = child.maxPreferredLogicalWidth(); |