[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677

mjs mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:41:56 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 72cd7c2163ff787b9a211657a3965315f670ac8e
Author: mjs <mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed May 26 07:17:03 2004 +0000

            Reviewed by Richard.
    
    	<rdar://problem/3652498>: new sniffing support is crashing
    
    	* WebView.subproj/WebMainResourceClient.m:
            (-[WebMainResourceClient checkContentPolicyForResponse:]): Retain
    	listener around call, in case delegate does something that ends up
    	invalidating it, like navigating to a new URL.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6690 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index d938693..1614481 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,14 @@
+2004-05-25  Maciej Stachowiak  <mjs at apple.com>
+
+        Reviewed by Richard.
+
+	<rdar://problem/3652498>: new sniffing support is crashing
+        
+	* WebView.subproj/WebMainResourceClient.m:
+        (-[WebMainResourceClient checkContentPolicyForResponse:]): Retain
+	listener around call, in case delegate does something that ends up
+	invalidating it, like navigating to a new URL.
+
 2004-05-25  Chris Blumenberg  <cblu at apple.com>
 
 	Fixed regression where undoing typing would undo character-by-character.
diff --git a/WebKit/WebView.subproj/WebMainResourceClient.m b/WebKit/WebView.subproj/WebMainResourceClient.m
index 3ae9c0a..93b95ef 100644
--- a/WebKit/WebView.subproj/WebMainResourceClient.m
+++ b/WebKit/WebView.subproj/WebMainResourceClient.m
@@ -259,16 +259,19 @@
 
 -(void)checkContentPolicyForResponse:(NSURLResponse *)r
 {
-    listener = [[WebPolicyDecisionListener alloc]
-		   _initWithTarget:self action:@selector(continueAfterContentPolicy:)];
+    WebPolicyDecisionListener *l = [[WebPolicyDecisionListener alloc]
+				       _initWithTarget:self action:@selector(continueAfterContentPolicy:)];
+    listener = l;
     policyResponse = [r retain];
 
     WebView *wv = [dataSource _webView];
     [wv setDefersCallbacks:YES];
+    [l retain];
     [[wv _policyDelegateForwarder] webView:wv decidePolicyForMIMEType:[r MIMEType]
                                                             request:[dataSource request]
                                                               frame:[dataSource webFrame]
                                                    decisionListener:listener];
+    [l release];
 }
 
 
diff --git a/WebKit/WebView.subproj/WebMainResourceLoader.m b/WebKit/WebView.subproj/WebMainResourceLoader.m
index 3ae9c0a..93b95ef 100644
--- a/WebKit/WebView.subproj/WebMainResourceLoader.m
+++ b/WebKit/WebView.subproj/WebMainResourceLoader.m
@@ -259,16 +259,19 @@
 
 -(void)checkContentPolicyForResponse:(NSURLResponse *)r
 {
-    listener = [[WebPolicyDecisionListener alloc]
-		   _initWithTarget:self action:@selector(continueAfterContentPolicy:)];
+    WebPolicyDecisionListener *l = [[WebPolicyDecisionListener alloc]
+				       _initWithTarget:self action:@selector(continueAfterContentPolicy:)];
+    listener = l;
     policyResponse = [r retain];
 
     WebView *wv = [dataSource _webView];
     [wv setDefersCallbacks:YES];
+    [l retain];
     [[wv _policyDelegateForwarder] webView:wv decidePolicyForMIMEType:[r MIMEType]
                                                             request:[dataSource request]
                                                               frame:[dataSource webFrame]
                                                    decisionListener:listener];
+    [l release];
 }
 
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list