From 6bbb7fbbac94d0f511a7bd0cbd50854ab643bfb2 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Tue, 18 Sep 2012 15:53:33 +0200 Subject: Imported WebKit commit c7503cef7ecb236730d1309676ab9fc723fd061d (http://svn.webkit.org/repository/webkit/trunk@128886) New snapshot with various build fixes --- Source/WebCore/rendering/FlowThreadController.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'Source/WebCore/rendering/FlowThreadController.cpp') diff --git a/Source/WebCore/rendering/FlowThreadController.cpp b/Source/WebCore/rendering/FlowThreadController.cpp index 9edd0aa7e..cb4bdb1f2 100644 --- a/Source/WebCore/rendering/FlowThreadController.cpp +++ b/Source/WebCore/rendering/FlowThreadController.cpp @@ -49,6 +49,7 @@ FlowThreadController::FlowThreadController(RenderView* view) : m_view(view) , m_currentRenderFlowThread(0) , m_isRenderNamedFlowThreadOrderDirty(false) + , m_autoLogicalHeightRegionsCount(0) { } @@ -98,6 +99,8 @@ void FlowThreadController::layoutRenderNamedFlowThreads() { ASSERT(m_renderNamedFlowThreadList); + ASSERT(isAutoLogicalHeightRegionsFlagConsistent()); + // Remove the left-over flow threads. RenderNamedFlowThreadList toRemoveList; for (RenderNamedFlowThreadList::iterator iter = m_renderNamedFlowThreadList->begin(); iter != m_renderNamedFlowThreadList->end(); ++iter) { @@ -156,4 +159,21 @@ void FlowThreadController::unregisterNamedFlowContentNode(Node* contentNode) m_mapNamedFlowContentNodes.remove(contentNode); } +#ifndef NDEBUG +bool FlowThreadController::isAutoLogicalHeightRegionsFlagConsistent() const +{ + if (!hasRenderNamedFlowThreads()) + return !hasAutoLogicalHeightRegions(); + + // Count the number of auto height regions + unsigned autoLogicalHeightRegions = 0; + for (RenderNamedFlowThreadList::iterator iter = m_renderNamedFlowThreadList->begin(); iter != m_renderNamedFlowThreadList->end(); ++iter) { + RenderNamedFlowThread* flowRenderer = *iter; + autoLogicalHeightRegions += flowRenderer->autoLogicalHeightRegionsCount(); + } + + return autoLogicalHeightRegions == m_autoLogicalHeightRegionsCount; +} +#endif + } // namespace WebCore -- cgit v1.2.1