Title: [171864] tags/Safari-600.1.3.3/Source

Diff

Modified: tags/Safari-600.1.3.3/Source/WebCore/ChangeLog (171863 => 171864)


--- tags/Safari-600.1.3.3/Source/WebCore/ChangeLog	2014-07-31 17:18:02 UTC (rev 171863)
+++ tags/Safari-600.1.3.3/Source/WebCore/ChangeLog	2014-07-31 17:20:27 UTC (rev 171864)
@@ -1,5 +1,9 @@
 2014-07-31  Babak Shafiei  <[email protected]>
 
+        Roll out r171647.
+
+2014-07-31  Babak Shafiei  <[email protected]>
+
         Roll out r171661.
 
 2014-07-29  Babak Shafiei  <[email protected]>

Modified: tags/Safari-600.1.3.3/Source/WebCore/dom/Document.cpp (171863 => 171864)


--- tags/Safari-600.1.3.3/Source/WebCore/dom/Document.cpp	2014-07-31 17:18:02 UTC (rev 171863)
+++ tags/Safari-600.1.3.3/Source/WebCore/dom/Document.cpp	2014-07-31 17:20:27 UTC (rev 171864)
@@ -515,7 +515,6 @@
     , m_disabledFieldsetElementsCount(0)
     , m_hasInjectedPlugInsScript(false)
     , m_renderTreeBeingDestroyed(false)
-    , m_hasPreparedForDestruction(false)
     , m_hasStyleWithViewportUnits(false)
 {
     allDocuments().add(this);
@@ -2048,9 +2047,6 @@
 
 void Document::prepareForDestruction()
 {
-    if (m_hasPreparedForDestruction)
-        return;
-
 #if ENABLE(TOUCH_EVENTS) && PLATFORM(IOS)
     clearTouchEventListeners();
 #endif
@@ -2059,8 +2055,7 @@
     if (m_domWindow && m_frame)
         m_domWindow->willDetachDocumentFromFrame();
 
-    if (hasLivingRenderTree())
-        destroyRenderTree();
+    destroyRenderTree();
 
     if (isPluginDocument())
         toPluginDocument(this)->detachFromPluginElement();
@@ -2092,8 +2087,6 @@
         m_mediaQueryMatcher->documentDestroyed();
 
     disconnectFromFrame();
-
-    m_hasPreparedForDestruction = true;
 }
 
 void Document::removeAllEventListeners()

Modified: tags/Safari-600.1.3.3/Source/WebCore/dom/Document.h (171863 => 171864)


--- tags/Safari-600.1.3.3/Source/WebCore/dom/Document.h	2014-07-31 17:18:02 UTC (rev 171863)
+++ tags/Safari-600.1.3.3/Source/WebCore/dom/Document.h	2014-07-31 17:20:27 UTC (rev 171864)
@@ -1695,7 +1695,6 @@
 
     bool m_hasInjectedPlugInsScript;
     bool m_renderTreeBeingDestroyed;
-    bool m_hasPreparedForDestruction;
 
     bool m_hasStyleWithViewportUnits;
 };

Modified: tags/Safari-600.1.3.3/Source/WebCore/loader/FrameLoader.cpp (171863 => 171864)


--- tags/Safari-600.1.3.3/Source/WebCore/loader/FrameLoader.cpp	2014-07-31 17:18:02 UTC (rev 171863)
+++ tags/Safari-600.1.3.3/Source/WebCore/loader/FrameLoader.cpp	2014-07-31 17:20:27 UTC (rev 171864)
@@ -613,10 +613,10 @@
     if (!m_frame.document()->inPageCache()) {
         m_frame.document()->cancelParsing();
         m_frame.document()->stopActiveDOMObjects();
-        bool hadLivingRenderTree = m_frame.document()->hasLivingRenderTree();
-        m_frame.document()->prepareForDestruction();
-        if (hadLivingRenderTree)
+        if (m_frame.document()->hasLivingRenderTree()) {
+            m_frame.document()->prepareForDestruction();
             m_frame.document()->removeFocusedNodeOfSubtree(m_frame.document());
+        }
     }
 
     // Do this after detaching the document so that the unload event works.

Modified: tags/Safari-600.1.3.3/Source/WebCore/page/Frame.cpp (171863 => 171864)


--- tags/Safari-600.1.3.3/Source/WebCore/page/Frame.cpp	2014-07-31 17:18:02 UTC (rev 171863)
+++ tags/Safari-600.1.3.3/Source/WebCore/page/Frame.cpp	2014-07-31 17:20:27 UTC (rev 171864)
@@ -251,7 +251,7 @@
     // Prepare for destruction now, so any unload event handlers get run and the DOMWindow is
     // notified. If we wait until the view is destroyed, then things won't be hooked up enough for
     // these calls to work.
-    if (!view && m_doc && !m_doc->inPageCache())
+    if (!view && m_doc && m_doc->hasLivingRenderTree() && !m_doc->inPageCache())
         m_doc->prepareForDestruction();
     
     if (m_view)
@@ -271,7 +271,7 @@
 {
     ASSERT(!newDocument || newDocument->frame() == this);
 
-    if (m_doc && !m_doc->inPageCache())
+    if (m_doc && m_doc->hasLivingRenderTree() && !m_doc->inPageCache())
         m_doc->prepareForDestruction();
 
     m_doc = newDocument.get();

Modified: tags/Safari-600.1.3.3/Source/WebKit2/ChangeLog (171863 => 171864)


--- tags/Safari-600.1.3.3/Source/WebKit2/ChangeLog	2014-07-31 17:18:02 UTC (rev 171863)
+++ tags/Safari-600.1.3.3/Source/WebKit2/ChangeLog	2014-07-31 17:20:27 UTC (rev 171864)
@@ -1,3 +1,7 @@
+2014-07-31  Babak Shafiei  <[email protected]>
+
+        Roll out r171647.
+
 2014-07-29  Babak Shafiei  <[email protected]>
 
         Merge r171647.

Modified: tags/Safari-600.1.3.3/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp (171863 => 171864)


--- tags/Safari-600.1.3.3/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp	2014-07-31 17:18:02 UTC (rev 171863)
+++ tags/Safari-600.1.3.3/Source/WebKit2/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp	2014-07-31 17:20:27 UTC (rev 171864)
@@ -887,6 +887,10 @@
 
 void WebFrameLoaderClient::committedLoad(DocumentLoader* loader, const char* data, int length)
 {
+    // If we're loading a custom representation, we don't want to hand off the data to WebCore.
+    if (m_frameHasCustomContentProvider)
+        return;
+
     if (!m_pluginView)
         loader->commitData(data, length);
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to