[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198

ggaren at apple.com ggaren at apple.com
Mon Feb 21 00:24:40 UTC 2011


The following commit has been merged in the webkit-1.3 branch:
commit 3d2ff16f7ba32d13e4ea18ce710a546746965c43
Author: ggaren at apple.com <ggaren at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Jan 31 04:06:43 2011 +0000

    2011-01-30  Geoffrey Garen  <ggaren at apple.com>
    
            Reviewed by Sam Weinig.
    
            [Take 2!]
            Fixed crash on window close (maybe crash on launch?) due to missing frame null checks
            https://bugs.webkit.org/show_bug.cgi?id=53408
    
            * UIProcess/WebContext.cpp:
            (WebKit::WebContext::didNavigateWithNavigationData):
            (WebKit::WebContext::didPerformClientRedirect):
            (WebKit::WebContext::didPerformServerRedirect):
            (WebKit::WebContext::didUpdateHistoryTitle): Use MESSAGE_CHECK because
            we don't think we should be able to reach this state under normal conditions.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77104 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/Source/WebKit2/ChangeLog b/Source/WebKit2/ChangeLog
index 4b745f8..b6ecc75 100644
--- a/Source/WebKit2/ChangeLog
+++ b/Source/WebKit2/ChangeLog
@@ -1,5 +1,20 @@
 2011-01-30  Geoffrey Garen  <ggaren at apple.com>
 
+        Reviewed by Sam Weinig.
+
+        [Take 2!]
+        Fixed crash on window close (maybe crash on launch?) due to missing frame null checks
+        https://bugs.webkit.org/show_bug.cgi?id=53408
+
+        * UIProcess/WebContext.cpp:
+        (WebKit::WebContext::didNavigateWithNavigationData):
+        (WebKit::WebContext::didPerformClientRedirect):
+        (WebKit::WebContext::didPerformServerRedirect):
+        (WebKit::WebContext::didUpdateHistoryTitle): Use MESSAGE_CHECK because
+        we don't think we should be able to reach this state under normal conditions.
+
+2011-01-30  Geoffrey Garen  <ggaren at apple.com>
+
         Reviewed by Maciej Stachowiak.
 
         Fixed crash on window close (maybe crash on launch?) due to missing
diff --git a/Source/WebKit2/UIProcess/WebContext.cpp b/Source/WebKit2/UIProcess/WebContext.cpp
index 7d9b798..3bd4b91 100644
--- a/Source/WebKit2/UIProcess/WebContext.cpp
+++ b/Source/WebKit2/UIProcess/WebContext.cpp
@@ -52,6 +52,8 @@
 #include <wtf/RefCountedLeakCounter.h>
 #endif
 
+#define MESSAGE_CHECK(assertion) MESSAGE_CHECK_BASE(assertion, process()->connection())
+
 using namespace WebCore;
 
 namespace WebKit {
@@ -299,7 +301,8 @@ void WebContext::didReceiveSynchronousMessageFromInjectedBundle(const String& me
 void WebContext::didNavigateWithNavigationData(uint64_t pageID, const WebNavigationDataStore& store, uint64_t frameID) 
 {
     WebFrameProxy* frame = m_process->webFrame(frameID);
-    if (!frame || !frame->page())
+    MESSAGE_CHECK(frame);
+    if (!frame->page())
         return;
     
     m_historyClient.didNavigateWithNavigationData(this, frame->page(), store, frame);
@@ -308,7 +311,8 @@ void WebContext::didNavigateWithNavigationData(uint64_t pageID, const WebNavigat
 void WebContext::didPerformClientRedirect(uint64_t pageID, const String& sourceURLString, const String& destinationURLString, uint64_t frameID)
 {
     WebFrameProxy* frame = m_process->webFrame(frameID);
-    if (!frame || !frame->page())
+    MESSAGE_CHECK(frame);
+    if (!frame->page())
         return;
     
     m_historyClient.didPerformClientRedirect(this, frame->page(), sourceURLString, destinationURLString, frame);
@@ -317,7 +321,8 @@ void WebContext::didPerformClientRedirect(uint64_t pageID, const String& sourceU
 void WebContext::didPerformServerRedirect(uint64_t pageID, const String& sourceURLString, const String& destinationURLString, uint64_t frameID)
 {
     WebFrameProxy* frame = m_process->webFrame(frameID);
-    if (!frame || !frame->page())
+    MESSAGE_CHECK(frame);
+    if (!frame->page())
         return;
     
     m_historyClient.didPerformServerRedirect(this, frame->page(), sourceURLString, destinationURLString, frame);
@@ -326,7 +331,8 @@ void WebContext::didPerformServerRedirect(uint64_t pageID, const String& sourceU
 void WebContext::didUpdateHistoryTitle(uint64_t pageID, const String& title, const String& url, uint64_t frameID)
 {
     WebFrameProxy* frame = m_process->webFrame(frameID);
-    if (!frame || !frame->page())
+    MESSAGE_CHECK(frame);
+    if (!frame->page())
         return;
 
     m_historyClient.didUpdateHistoryTitle(this, frame->page(), title, url, frame);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list