[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373

eric at webkit.org eric at webkit.org
Thu Apr 8 00:55:20 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit c024942b1a157f5aea11c9dfaea1480925a35b52
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Jan 6 00:07:56 2010 +0000

    2010-01-05  James Robinson  <jamesr at chromium.org>
    
            Reviewed by David Hyatt.
    
            Cleans up line box clearing when a RenderBlock loses its last child.
            https://bugs.webkit.org/show_bug.cgi?id=33228
    
            The 'fullLayout' flag in RenderBlock::layoutInlineChildren() is pretty vague, hopefully this will be easier for the next person to figure out.
    
            No new tests.
    
            * rendering/RenderBlock.cpp:
            (WebCore::RenderBlock::removeChild):
            * rendering/RenderBlockLineLayout.cpp:
            (WebCore::RenderBlock::layoutInlineChildren):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@52838 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 6842cee..1a928d7 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2010-01-05  James Robinson  <jamesr at chromium.org>
+
+        Reviewed by David Hyatt.
+
+        Cleans up line box clearing when a RenderBlock loses its last child.
+        https://bugs.webkit.org/show_bug.cgi?id=33228
+
+        The 'fullLayout' flag in RenderBlock::layoutInlineChildren() is pretty vague, hopefully this will be easier for the next person to figure out.
+
+
+        No new tests.
+
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::removeChild):
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::RenderBlock::layoutInlineChildren):
+
 2010-01-05  Alexander Pavlov  <apavlov at chromium.org>
 
         Reviewed by Pavel Feldman.
diff --git a/WebCore/rendering/RenderBlock.cpp b/WebCore/rendering/RenderBlock.cpp
index 4b1cfdb..b57236a 100644
--- a/WebCore/rendering/RenderBlock.cpp
+++ b/WebCore/rendering/RenderBlock.cpp
@@ -554,6 +554,10 @@ void RenderBlock::removeChild(RenderObject* oldChild)
         anonBlock->deleteLineBoxTree();
         anonBlock->destroy();
     }
+
+    // If this was our last child be sure to clear out our line boxes.
+    if (childrenInline() && !firstChild())
+        lineBoxes()->deleteLineBoxes(renderArena());
 }
 
 bool RenderBlock::isSelfCollapsingBlock() const
diff --git a/WebCore/rendering/RenderBlockLineLayout.cpp b/WebCore/rendering/RenderBlockLineLayout.cpp
index f05d724..471fa81 100644
--- a/WebCore/rendering/RenderBlockLineLayout.cpp
+++ b/WebCore/rendering/RenderBlockLineLayout.cpp
@@ -823,7 +823,7 @@ void RenderBlock::layoutInlineChildren(bool relayoutChildren, int& repaintTop, i
 
     // Figure out if we should clear out our line boxes.
     // FIXME: Handle resize eventually!
-    bool fullLayout = !firstLineBox() || !firstChild() || selfNeedsLayout() || relayoutChildren;
+    bool fullLayout = !firstLineBox() || selfNeedsLayout() || relayoutChildren;
     if (fullLayout)
         lineBoxes()->deleteLineBoxes(renderArena());
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list