[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
jberlin at webkit.org
jberlin at webkit.org
Wed Dec 22 15:16:58 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit f8f9919825c98eff036066b0b58363b77cf609ac
Author: jberlin at webkit.org <jberlin at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Oct 29 19:30:43 2010 +0000
ASSERTION FAILURE in WebProcessProxy::frameDestroyed when a Page is closed before it can send
the DidCreateMainFrame messsage to the UIProcess.
https://bugs.webkit.org/show_bug.cgi?id=48654
Reviewed by Anders Carlsson.
WebProcessProxy::frameDestroyed was asserting that the frameID it was called with was
registered in WebProcessProxy::frameCreated (which is called when the WebPageProxy is
created). However, in the case where we close the page before it's had the chance to send
the DidCreateMainFrame message back to the UI process, the UI Process will get the
DidDestroyFrame message because it's sent directly to the WebProcessProxy and doesn't go
through WebPageProxy.
Remove the assert because it is invalid in this case.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::frameDestroyed):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70915 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index f1780b1..03bb508 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,23 @@
+2010-10-29 Jessie Berlin <jberlin at apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ ASSERTION FAILURE in WebProcessProxy::frameDestroyed when a Page is closed before it can send
+ the DidCreateMainFrame messsage to the UIProcess.
+ https://bugs.webkit.org/show_bug.cgi?id=48654
+
+ WebProcessProxy::frameDestroyed was asserting that the frameID it was called with was
+ registered in WebProcessProxy::frameCreated (which is called when the WebPageProxy is
+ created). However, in the case where we close the page before it's had the chance to send
+ the DidCreateMainFrame message back to the UI process, the UI Process will get the
+ DidDestroyFrame message because it's sent directly to the WebProcessProxy and doesn't go
+ through WebPageProxy.
+
+ Remove the assert because it is invalid in this case.
+
+ * UIProcess/WebProcessProxy.cpp:
+ (WebKit::WebProcessProxy::frameDestroyed):
+
2010-10-29 Adam Roben <aroben at apple.com>
Build fix when Carbon plugins are disabled
diff --git a/WebKit2/UIProcess/WebProcessProxy.cpp b/WebKit2/UIProcess/WebProcessProxy.cpp
index 58ad2cc..8b0ac99 100644
--- a/WebKit2/UIProcess/WebProcessProxy.cpp
+++ b/WebKit2/UIProcess/WebProcessProxy.cpp
@@ -485,7 +485,9 @@ void WebProcessProxy::frameCreated(uint64_t frameID, WebFrameProxy* frameProxy)
void WebProcessProxy::frameDestroyed(uint64_t frameID)
{
- ASSERT(m_frameMap.contains(frameID));
+ // If the page is closed before it has had the chance to send the DidCreateMainFrame message
+ // back to the UIProcess, then the frameDestroyed message will still be received because it
+ // gets sent directly to the WebProcessProxy.
m_frameMap.remove(frameID);
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list