[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
hyatt
hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:38:22 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 73a4fe6f580299552862d44eea586421cd7bdd25
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed May 5 20:50:21 2004 +0000
Fixes for 3637924, 3643356, and 3558513, all crashes in recalcStyle. Make sure the tree is always in a
sane state when removing children while changing .innerHTML.
Reviewed by darin
* khtml/xml/dom_nodeimpl.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6545 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 26eb0c0..19a2b8c 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,5 +1,14 @@
2004-05-05 David Hyatt <hyatt at apple.com>
+ Fixes for 3637924, 3643356, and 3558513, all crashes in recalcStyle. Make sure the tree is always in a
+ sane state when removing children while changing .innerHTML.
+
+ Reviewed by darin
+
+ * khtml/xml/dom_nodeimpl.cpp:
+
+2004-05-05 David Hyatt <hyatt at apple.com>
+
A collection of fixes.
(1) Fix a regression from the style sharing landing that made visited and unvisited links accidentally share.
diff --git a/WebCore/khtml/xml/dom_nodeimpl.cpp b/WebCore/khtml/xml/dom_nodeimpl.cpp
index c07d6df..ff67947 100644
--- a/WebCore/khtml/xml/dom_nodeimpl.cpp
+++ b/WebCore/khtml/xml/dom_nodeimpl.cpp
@@ -1710,10 +1710,8 @@ NodeImpl *NodeBaseImpl::removeChild ( NodeImpl *oldChild, int &exceptioncode )
void NodeBaseImpl::removeChildren()
{
- NodeImpl *n, *next;
- for( n = _first; n != 0; n = next )
- {
- next = n->nextSibling();
+ while (NodeImpl *n = _first) {
+ NodeImpl *next = n->nextSibling();
if (n->attached())
n->detach();
if (n->inDocument())
@@ -1721,10 +1719,11 @@ void NodeBaseImpl::removeChildren()
n->setPreviousSibling(0);
n->setNextSibling(0);
n->setParent(0);
- if( !n->refCount() )
+ if (!n->refCount())
delete n;
+ _first = next;
}
- _first = _last = 0;
+ _last = 0;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list