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

jhawkins at chromium.org jhawkins at chromium.org
Wed Dec 22 11:50:28 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit d14b72fda4da63aa012c413e93f410cfdecdc1f5
Author: jhawkins at chromium.org <jhawkins at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Aug 9 17:05:53 2010 +0000

    2010-08-06  James Hawkins  <jhawkins at chromium.org>
    
            Reviewed by Dimitri Glazkov.
    
            [Chromium] Notify the WebFrameClient when the frame is detached from
            the view. This is used to clear the cached frame in the FormManager.
            Eventually this will be removed once handling forms is moved into
            WebCore.
            https://bugs.webkit.org/show_bug.cgi?id=43648
    
            * public/WebFrameClient.h:
            (WebKit::WebFrameClient::frameDetached):
            * src/FrameLoaderClientImpl.cpp:
            (WebKit::FrameLoaderClientImpl::detachedFromParent3):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@64988 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index e4a7a44..62c29bd 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,18 @@
+2010-08-06  James Hawkins  <jhawkins at chromium.org>
+
+        Reviewed by Dimitri Glazkov.
+
+        [Chromium] Notify the WebFrameClient when the frame is detached from
+        the view. This is used to clear the cached frame in the FormManager.
+        Eventually this will be removed once handling forms is moved into
+        WebCore.
+        https://bugs.webkit.org/show_bug.cgi?id=43648
+
+        * public/WebFrameClient.h:
+        (WebKit::WebFrameClient::frameDetached):
+        * src/FrameLoaderClientImpl.cpp:
+        (WebKit::FrameLoaderClientImpl::detachedFromParent3):
+
 2010-08-09  Pavel Feldman  <pfeldman at chromium.org>
 
         Not reviewed: Chromium tests fix.
diff --git a/WebKit/chromium/public/WebFrameClient.h b/WebKit/chromium/public/WebFrameClient.h
index 2b7ee0d..91f0e38 100644
--- a/WebKit/chromium/public/WebFrameClient.h
+++ b/WebKit/chromium/public/WebFrameClient.h
@@ -90,6 +90,12 @@ public:
 
     // General notifications -----------------------------------------------
 
+    // This frame has been detached from the view.
+    //
+    // FIXME: Do not use this in new code. Currently this is used by code in
+    // Chromium that errantly caches WebKit objects.
+    virtual void frameDetached(WebFrame*) { }
+
     // This frame is about to be closed.
     virtual void willClose(WebFrame*) { }
 
diff --git a/WebKit/chromium/src/FrameLoaderClientImpl.cpp b/WebKit/chromium/src/FrameLoaderClientImpl.cpp
index b416e35..95f2d47 100644
--- a/WebKit/chromium/src/FrameLoaderClientImpl.cpp
+++ b/WebKit/chromium/src/FrameLoaderClientImpl.cpp
@@ -246,7 +246,11 @@ void FrameLoaderClientImpl::detachedFromParent3()
     // go to a page and then navigate to a new page without getting any asserts
     // or crashes.
     m_webFrame->frame()->script()->proxy()->clearForClose();
-    
+
+    // Alert the client that the frame is being detached. This is the last
+    // chance we have to communicate with the client.
+    m_webFrame->client()->frameDetached(m_webFrame);
+
     // Stop communicating with the WebFrameClient at this point since we are no
     // longer associated with the Page.
     m_webFrame->setClient(0);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list