Title: [92453] trunk
Revision
92453
Author
[email protected]
Date
2011-08-05 00:00:47 -0700 (Fri, 05 Aug 2011)

Log Message

Unreviewed, rolling out r92439.
http://trac.webkit.org/changeset/92439
https://bugs.webkit.org/show_bug.cgi?id=65753

Caused 9 tests to fail on Qt (Requested by abarth on #webkit).

Patch by Sheriff Bot <[email protected]> on 2011-08-05

Source/WebCore:

* dom/Document.cpp:
(WebCore::Document::implicitOpen):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::transitionToCommitted):
(WebCore::FrameLoader::detachChildren):

LayoutTests:

* loader/document-destruction-within-unload-expected.txt: Removed.
* loader/document-destruction-within-unload.html: Removed.
* loader/resources/document-destruction-within-unload-iframe.html: Removed.
* loader/resources/document-destruction-within-unload.svg: Removed.

Modified Paths

Removed Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (92452 => 92453)


--- trunk/LayoutTests/ChangeLog	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/LayoutTests/ChangeLog	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1,3 +1,16 @@
+2011-08-05  Sheriff Bot  <[email protected]>
+
+        Unreviewed, rolling out r92439.
+        http://trac.webkit.org/changeset/92439
+        https://bugs.webkit.org/show_bug.cgi?id=65753
+
+        Caused 9 tests to fail on Qt (Requested by abarth on #webkit).
+
+        * loader/document-destruction-within-unload-expected.txt: Removed.
+        * loader/document-destruction-within-unload.html: Removed.
+        * loader/resources/document-destruction-within-unload-iframe.html: Removed.
+        * loader/resources/document-destruction-within-unload.svg: Removed.
+
 2011-08-04  Ryosuke Niwa  <[email protected]>
 
         Chromium test expectation update after r92341.

Deleted: trunk/LayoutTests/loader/document-destruction-within-unload-expected.txt (92452 => 92453)


--- trunk/LayoutTests/loader/document-destruction-within-unload-expected.txt	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/LayoutTests/loader/document-destruction-within-unload-expected.txt	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1,2 +0,0 @@
-
-For the test to pass there should be no crash.

Deleted: trunk/LayoutTests/loader/document-destruction-within-unload.html (92452 => 92453)


--- trunk/LayoutTests/loader/document-destruction-within-unload.html	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/LayoutTests/loader/document-destruction-within-unload.html	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1,20 +0,0 @@
-<html>
-    <body>
-        <script>
-            if (window.layoutTestController) {
-                layoutTestController.dumpAsText();
-                layoutTestController.waitUntilDone();
-            }
-        </script>
-        <iframe src=""
-        </iframe>
-        <p>For the test to pass there should be no crash.</p>
-        <script>
-            function done() {
-                if (window.layoutTestController)
-                    layoutTestController.notifyDone();
-            }
-        </script>
-
-    </body>
-</html>

Deleted: trunk/LayoutTests/loader/resources/document-destruction-within-unload-iframe.html (92452 => 92453)


--- trunk/LayoutTests/loader/resources/document-destruction-within-unload-iframe.html	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/LayoutTests/loader/resources/document-destruction-within-unload-iframe.html	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1,16 +0,0 @@
-<html>
-    <body _onload_="window.done()">
-        <script>
-            function runTest() {
-                var test = document.getElementById('root').contentDocument;
-                test.firstChild.setAttribute('onunload', "parent.clearUs();");
-                location.reload();
-            }
-            function clearUs() {
-                document.write();
-            }
-        </script>
-        <object data=""
-        <object data="" id="root" _onload_="runTest();"></object>
-    </body>
-</html>

Deleted: trunk/LayoutTests/loader/resources/document-destruction-within-unload.svg (92452 => 92453)


--- trunk/LayoutTests/loader/resources/document-destruction-within-unload.svg	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/LayoutTests/loader/resources/document-destruction-within-unload.svg	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1,2 +0,0 @@
-<svg xmlns="http://www.w3.org/2000/svg">
-</svg>

Modified: trunk/Source/WebCore/ChangeLog (92452 => 92453)


--- trunk/Source/WebCore/ChangeLog	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/Source/WebCore/ChangeLog	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1,3 +1,17 @@
+2011-08-05  Sheriff Bot  <[email protected]>
+
+        Unreviewed, rolling out r92439.
+        http://trac.webkit.org/changeset/92439
+        https://bugs.webkit.org/show_bug.cgi?id=65753
+
+        Caused 9 tests to fail on Qt (Requested by abarth on #webkit).
+
+        * dom/Document.cpp:
+        (WebCore::Document::implicitOpen):
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::transitionToCommitted):
+        (WebCore::FrameLoader::detachChildren):
+
 2011-08-04  Ryosuke Niwa  <[email protected]>
 
         Use RenderedPosition instead of getInlineBoxAndOffset in Editor and AccessibilityObject

Modified: trunk/Source/WebCore/dom/Document.cpp (92452 => 92453)


--- trunk/Source/WebCore/dom/Document.cpp	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/Source/WebCore/dom/Document.cpp	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1995,10 +1995,6 @@
 
     removeChildren();
 
-    // cancel again, as removeChildren can cause event triggers to be added
-    // again, which we don't want triggered on the old document.
-    cancelParsing();
-
     setCompatibilityMode(NoQuirksMode);
 
     m_parser = createParser();

Modified: trunk/Source/WebCore/loader/FrameLoader.cpp (92452 => 92453)


--- trunk/Source/WebCore/loader/FrameLoader.cpp	2011-08-05 06:58:13 UTC (rev 92452)
+++ trunk/Source/WebCore/loader/FrameLoader.cpp	2011-08-05 07:00:47 UTC (rev 92453)
@@ -1834,13 +1834,9 @@
     if (m_documentLoader)
         m_documentLoader->stopLoadingPlugIns();
 
-    // State must be set before setting m_documentLoader to avoid
-    // m_provisionalDocumentLoader getting detached from the frame via a sub
-    // frame. See https://bugs.webkit.org/show_bug.cgi?id=64741 for more
-    // discussion.
-    setState(FrameStateCommittedPage);
     setDocumentLoader(m_provisionalDocumentLoader.get());
     setProvisionalDocumentLoader(0);
+    setState(FrameStateCommittedPage);
 
 #if ENABLE(TOUCH_EVENTS)
     if (isLoadingMainFrame())
@@ -2336,14 +2332,12 @@
 
 void FrameLoader::detachChildren()
 {
-    typedef Vector<RefPtr<Frame> > FrameVector;
-    FrameVector protect;
-
     // FIXME: Is it really necessary to do this in reverse order?
-    for (Frame* child = m_frame->tree()->lastChild(); child; child = child->tree()->previousSibling())
-        protect.append(child);
-    for (FrameVector::iterator it = protect.begin(); it != protect.end(); ++it)
-        (*it)->loader()->detachFromParent();
+    Frame* previous;
+    for (Frame* child = m_frame->tree()->lastChild(); child; child = previous) {
+        previous = child->tree()->previousSibling();
+        child->loader()->detachFromParent();
+    }
 }
 
 void FrameLoader::closeAndRemoveChild(Frame* child)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to