[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.15.1-1414-gc69ee75

eric at webkit.org eric at webkit.org
Thu Oct 29 20:34:38 UTC 2009


The following commit has been merged in the webkit-1.1 branch:
commit 6cae31a180829db0b1fcac572642178e8bc8fcc3
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sat Sep 26 02:35:15 2009 +0000

    2009-09-25  Adam Barth  <abarth at webkit.org>
    
            Reviewed by Darin Adler.
    
            Load blocks during unload should not affect targeted loads
            https://bugs.webkit.org/show_bug.cgi?id=29747
    
            Test that we can follow targeted hyperlinks in an unload handler.
    
            * fast/loader/resources/unload-hyperlink-targeted-subframe.html: Added.
            * fast/loader/unload-hyperlink-targeted-expected.txt: Added.
            * fast/loader/unload-hyperlink-targeted.html: Added.
    2009-09-25  Adam Barth  <abarth at webkit.org>
    
            Reviewed by Darin Adler.
    
            Load blocks during unload should not affect targeted loads
            https://bugs.webkit.org/show_bug.cgi?id=29747
    
            Move the check of the unload state after checking for targeted links.
    
            Test: fast/loader/unload-hyperlink-targeted.html
    
            * loader/FrameLoader.cpp:
            (WebCore::FrameLoader::loadURL):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@48783 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 1c98207..16c631f 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,16 @@
+2009-09-25  Adam Barth  <abarth at webkit.org>
+
+        Reviewed by Darin Adler.
+
+        Load blocks during unload should not affect targeted loads
+        https://bugs.webkit.org/show_bug.cgi?id=29747
+
+        Test that we can follow targeted hyperlinks in an unload handler.
+
+        * fast/loader/resources/unload-hyperlink-targeted-subframe.html: Added.
+        * fast/loader/unload-hyperlink-targeted-expected.txt: Added.
+        * fast/loader/unload-hyperlink-targeted.html: Added.
+
 2009-09-25  Alexey Proskuryakov  <ap at apple.com>
 
         Reverting r48767, as it broke Windows build in a non-trivial way.
diff --git a/LayoutTests/fast/loader/resources/unload-hyperlink-targeted-subframe.html b/LayoutTests/fast/loader/resources/unload-hyperlink-targeted-subframe.html
new file mode 100644
index 0000000..879d179
--- /dev/null
+++ b/LayoutTests/fast/loader/resources/unload-hyperlink-targeted-subframe.html
@@ -0,0 +1,15 @@
+<script>
+addEventListener("unload", function() {
+  var anc = document.getElementById("lk");
+  var evt = document.createEvent("MouseEvents");
+  evt.initMouseEvent(
+      "click", true, true, window, 1, 0, 0, 0, 0,
+      false, false, false, false, 0, anc);
+  anc.dispatchEvent(evt);
+}, false);
+</script>
+<a id="lk" target="_top"
+   href="pass-and-notify-done.html">Link to iframe.</a>
+<script>
+window.location = "about:blank";
+</script>
diff --git a/LayoutTests/fast/loader/unload-hyperlink-targeted-expected.txt b/LayoutTests/fast/loader/unload-hyperlink-targeted-expected.txt
new file mode 100644
index 0000000..0015ed1
--- /dev/null
+++ b/LayoutTests/fast/loader/unload-hyperlink-targeted-expected.txt
@@ -0,0 +1,2 @@
+frame "<!--framePath //<!--frame0-->-->" - has 1 onunload handler(s)
+PASS
diff --git a/LayoutTests/fast/loader/unload-hyperlink-targeted.html b/LayoutTests/fast/loader/unload-hyperlink-targeted.html
new file mode 100644
index 0000000..b2f0c3c
--- /dev/null
+++ b/LayoutTests/fast/loader/unload-hyperlink-targeted.html
@@ -0,0 +1,8 @@
+<script>
+if (window.layoutTestController) {
+  layoutTestController.dumpAsText();
+  layoutTestController.waitUntilDone();
+}
+</script>
+<iframe src="resources/unload-hyperlink-targeted-subframe.html">
+</iframe>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 0ff1729..748c854 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,17 @@
+2009-09-25  Adam Barth  <abarth at webkit.org>
+
+        Reviewed by Darin Adler.
+
+        Load blocks during unload should not affect targeted loads
+        https://bugs.webkit.org/show_bug.cgi?id=29747
+
+        Move the check of the unload state after checking for targeted links.
+
+        Test: fast/loader/unload-hyperlink-targeted.html
+
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::loadURL):
+
 2009-09-25  Kenneth Russell  <kbr at google.com>
 
         Reviewed by Dimitri Glazkov.
diff --git a/WebCore/loader/FrameLoader.cpp b/WebCore/loader/FrameLoader.cpp
index 807edef..a3a65c4 100644
--- a/WebCore/loader/FrameLoader.cpp
+++ b/WebCore/loader/FrameLoader.cpp
@@ -2312,9 +2312,6 @@ void FrameLoader::loadFrameRequest(const FrameLoadRequest& request, bool lockHis
 void FrameLoader::loadURL(const KURL& newURL, const String& referrer, const String& frameName, bool lockHistory, FrameLoadType newLoadType,
     PassRefPtr<Event> event, PassRefPtr<FormState> prpFormState)
 {
-    if (m_unloadEventBeingDispatched)
-        return;
-
     RefPtr<FormState> formState = prpFormState;
     bool isFormSubmission = formState;
     
@@ -2337,6 +2334,9 @@ void FrameLoader::loadURL(const KURL& newURL, const String& referrer, const Stri
         return;
     }
 
+    if (m_unloadEventBeingDispatched)
+        return;
+
     NavigationAction action(newURL, newLoadType, isFormSubmission, event);
 
     if (!targetFrame && !frameName.isEmpty()) {

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list