[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-10851-g50815da

rniwa at webkit.org rniwa at webkit.org
Wed Dec 22 18:26:53 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 4dc664ac4fb65c77bcfbf487fdcbba1707cbf33e
Author: rniwa at webkit.org <rniwa at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sat Dec 11 00:30:14 2010 +0000

    2010-12-10  Ryosuke Niwa  <rniwa at webkit.org>
    
            Reviewed by Darin Adler.
    
            REGRESSION(r73799): editing/execCommand/4920488.html fails
            https://bugs.webkit.org/show_bug.cgi?id=50854
    
            The regression was caused by Range::processContents's not extracting
            m_end.container()->firstChild(). Fixed the bug by always adding the first child.
    
            * dom/Range.cpp:
            (WebCore::Range::processContents):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@73818 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 1326279..7c4ffb1 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,16 @@
+2010-12-10  Ryosuke Niwa  <rniwa at webkit.org>
+
+        Reviewed by Darin Adler.
+
+        REGRESSION(r73799): editing/execCommand/4920488.html fails
+        https://bugs.webkit.org/show_bug.cgi?id=50854
+
+        The regression was caused by Range::processContents's not extracting
+        m_end.container()->firstChild(). Fixed the bug by always adding the first child.
+
+        * dom/Range.cpp:
+        (WebCore::Range::processContents):
+
 2010-12-10  Adam Barth  <abarth at webkit.org>
 
         Reviewed by Eric Seidel.
diff --git a/WebCore/dom/Range.cpp b/WebCore/dom/Range.cpp
index cffc051..8b5ac56 100644
--- a/WebCore/dom/Range.cpp
+++ b/WebCore/dom/Range.cpp
@@ -794,11 +794,15 @@ PassRefPtr<DocumentFragment> Range::processContents(ActionType action, Exception
             Node* n = m_end.container()->firstChild();
             if (n && m_end.offset()) {
                 NodeVector nodes;
-                for (int i = 0; i + 1 < m_end.offset() && n; i++, n = n->nextSibling()) {
+                int i = 0;
+                do {
                     nodes.append(n);
-                }
+                    if (!n->nextSibling())
+                        break;
+                    n = n->nextSibling();
+                } while (i + 1 < m_end.offset());
                 for (int i = nodes.size() - 1; i >= 0; i--) {
-                    Node* n = nodes[i].get();
+                    n = nodes[i].get();
                     if (action == EXTRACT_CONTENTS)
                         rightContents->insertBefore(n, rightContents->firstChild(), ec); // will remove n from its parent
                     else if (action == CLONE_CONTENTS)

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list