[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

darin darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:41:42 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit d85609090db67160a326034022257cd67ed22000
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sun May 11 18:53:20 2003 +0000

            Reviewed by Dave.
    
    	- fixed 3242493 -- loop in khtml::RenderLayer::RenderZTreeNode at google cached copy of epower2go.biz page
    
            * khtml/rendering/render_layer.cpp: (RenderLayer::RenderZTreeNode::detach):
            Use an iterative algorithm rather than a recursive one to destroy the child
            nodes at each level of the tree, so our recursion is O(depth of tree) rather
            than O(size of tree).
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4349 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 1fddb4d..64eab84 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,14 @@
+2003-05-11  Darin Adler  <darin at apple.com>
+
+        Reviewed by Dave.
+
+	- fixed 3242493 -- loop in khtml::RenderLayer::RenderZTreeNode at google cached copy of epower2go.biz page
+
+        * khtml/rendering/render_layer.cpp: (RenderLayer::RenderZTreeNode::detach):
+        Use an iterative algorithm rather than a recursive one to destroy the child
+        nodes at each level of the tree, so our recursion is O(depth of tree) rather
+        than O(size of tree).
+
 2003-05-10  David Hyatt  <hyatt at apple.com>
 
 	Fix the misrendering at the top of cnn.com (the extra tearing
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 1fddb4d..64eab84 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,14 @@
+2003-05-11  Darin Adler  <darin at apple.com>
+
+        Reviewed by Dave.
+
+	- fixed 3242493 -- loop in khtml::RenderLayer::RenderZTreeNode at google cached copy of epower2go.biz page
+
+        * khtml/rendering/render_layer.cpp: (RenderLayer::RenderZTreeNode::detach):
+        Use an iterative algorithm rather than a recursive one to destroy the child
+        nodes at each level of the tree, so our recursion is O(depth of tree) rather
+        than O(size of tree).
+
 2003-05-10  David Hyatt  <hyatt at apple.com>
 
 	Fix the misrendering at the top of cnn.com (the extra tearing
diff --git a/WebCore/khtml/rendering/render_layer.cpp b/WebCore/khtml/rendering/render_layer.cpp
index c1c86d2..4f2988e 100644
--- a/WebCore/khtml/rendering/render_layer.cpp
+++ b/WebCore/khtml/rendering/render_layer.cpp
@@ -1091,10 +1091,14 @@ void RenderLayer::RenderZTreeNode::operator delete(void* ptr, size_t sz)
 
 void RenderLayer::RenderZTreeNode::detach(RenderArena* renderArena)
 {
-    if (next)
-        next->detach(renderArena); 
-    if (child)
-        child->detach(renderArena);
+    assert(!next);
+    
+    RenderZTreeNode *n;
+    for (RenderZTreeNode *c = child; c; c = n) {
+        n = c->next;
+        c->next = 0;
+        c->detach(renderArena);
+    }
     if (layerElement)
         layerElement->detach(renderArena);
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list