[SCM] WebKit Debian packaging branch, debian/experimental, updated. debian/1.3.8-1-1049-g2e11a8e

abarth at webkit.org abarth at webkit.org
Fri Jan 21 14:50:01 UTC 2011


The following commit has been merged in the debian/experimental branch:
commit c73581d2448e76671baa65fcc6dca03dfb3b23be
Author: abarth at webkit.org <abarth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sat Jan 1 02:38:25 2011 +0000

    2010-12-31  Adam Barth  <abarth at webkit.org>
    
            Reviewed by Darin Adler.
    
            fast/loader/about-blank-hash-change.html fails on Chromium
            https://bugs.webkit.org/show_bug.cgi?id=51788
    
            I'm unable to reproduce the failure locally, so this patch is slightly
            speculative.  We need to be slighly more careful how we compare the
            fragment identifiers for Chromium because Chromium uses a URL parser
            that is more agressive about canonicalization.
    
            * page/Location.cpp:
            (WebCore::Location::setHash):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@74843 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index d06cbf8..6043a96 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-12-31  Adam Barth  <abarth at webkit.org>
+
+        Reviewed by Darin Adler.
+
+        fast/loader/about-blank-hash-change.html fails on Chromium
+        https://bugs.webkit.org/show_bug.cgi?id=51788
+
+        I'm unable to reproduce the failure locally, so this patch is slightly
+        speculative.  We need to be slighly more careful how we compare the
+        fragment identifiers for Chromium because Chromium uses a URL parser
+        that is more agressive about canonicalization.
+
+        * page/Location.cpp:
+        (WebCore::Location::setHash):
+
 2010-12-31  Martin Robinson  <mrobinson at igalia.com>
 
         Reviewed by Xan Lopez.
diff --git a/WebCore/page/Location.cpp b/WebCore/page/Location.cpp
index b37a084..be185f9 100644
--- a/WebCore/page/Location.cpp
+++ b/WebCore/page/Location.cpp
@@ -233,9 +233,12 @@ void Location::setHash(const String& hash, DOMWindow* activeWindow, DOMWindow* f
     String newFragmentIdentifier = hash;
     if (hash[0] == '#')
         newFragmentIdentifier = hash.substring(1);
-    if (equalIgnoringNullity(oldFragmentIdentifier, newFragmentIdentifier))
-        return;
     url.setFragmentIdentifier(newFragmentIdentifier);
+    // Note that by parsing the URL and *then* comparing fragments, we are 
+    // comparing fragments post-canonicalization, and so this handles the 
+    // cases where fragment identifiers are ignored or invalid. 
+    if (equalIgnoringNullity(oldFragmentIdentifier, url.fragmentIdentifier()))
+        return;
     m_frame->domWindow()->setLocation(url.string(), activeWindow, firstWindow);
 }
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list