Reviewed by Richard.
authormjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 1 Dec 2003 22:53:31 +0000 (22:53 +0000)
committermjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 1 Dec 2003 22:53:31 +0000 (22:53 +0000)
<rdar://problem/3487185>: implement security checks for XMLHttpRequest

* WebCoreSupport.subproj/WebSubresourceClient.m:
        (-[WebSubresourceClient connection:willSendRequest:redirectResponse:]): Let
WebCore know about redirects.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@5643 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKit/ChangeLog
WebKit/WebCoreSupport.subproj/WebSubresourceClient.m
WebKit/WebCoreSupport.subproj/WebSubresourceLoader.m

index 5c92ef7..a9102e9 100644 (file)
@@ -1,3 +1,13 @@
+2003-11-21  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Richard.
+
+       <rdar://problem/3487185>: implement security checks for XMLHttpRequest
+        
+       * WebCoreSupport.subproj/WebSubresourceClient.m:
+        (-[WebSubresourceClient connection:willSendRequest:redirectResponse:]): Let
+       WebCore know about redirects.
+
 2003-12-01  Richard Williamson   <rjw@apple.com>
 
        Moved grungy polling code from WebKit to the JavaPlugin.
index ffa6d69..684b780 100644 (file)
 
 - (NSURLRequest *)connection:(NSURLConnection *)con willSendRequest:(NSURLRequest *)newRequest redirectResponse:(NSURLResponse *)redirectResponse
 {
-    // FIXME: We do want to tell the client about redirects for subresources.
-    // But the current API doesn't give any way to tell redirects on
-    // the main page from redirects on subresources.
-
-    // FIXME: Need to make sure client sets cookie policy base URL
-    // properly on redirect when we have the new redirect
-    // request-adjusting API
+    NSURL *oldURL = [request URL];
+    NSURLRequest *clientRequest = [super connection:con willSendRequest:newRequest redirectResponse:redirectResponse];
+    
+    if (![oldURL isEqual:[clientRequest URL]]) {
+       [loader redirectedToURL:[clientRequest URL]];
+    }
 
-    return [super connection:con willSendRequest:newRequest redirectResponse:redirectResponse];
+    return clientRequest;
 }
 
 - (void)connection:(NSURLConnection *)con didReceiveResponse:(NSURLResponse *)r
index ffa6d69..684b780 100644 (file)
 
 - (NSURLRequest *)connection:(NSURLConnection *)con willSendRequest:(NSURLRequest *)newRequest redirectResponse:(NSURLResponse *)redirectResponse
 {
-    // FIXME: We do want to tell the client about redirects for subresources.
-    // But the current API doesn't give any way to tell redirects on
-    // the main page from redirects on subresources.
-
-    // FIXME: Need to make sure client sets cookie policy base URL
-    // properly on redirect when we have the new redirect
-    // request-adjusting API
+    NSURL *oldURL = [request URL];
+    NSURLRequest *clientRequest = [super connection:con willSendRequest:newRequest redirectResponse:redirectResponse];
+    
+    if (![oldURL isEqual:[clientRequest URL]]) {
+       [loader redirectedToURL:[clientRequest URL]];
+    }
 
-    return [super connection:con willSendRequest:newRequest redirectResponse:redirectResponse];
+    return clientRequest;
 }
 
 - (void)connection:(NSURLConnection *)con didReceiveResponse:(NSURLResponse *)r