[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
cblu
cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:12:43 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 80441ecb9c3dc5a32ef9636c356d37147b895cc7
Author: cblu <cblu at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Dec 9 02:42:15 2002 +0000
WebKit:
Fixed: 3121627 - REGRESSION: partial progress is left in address field after download
Reviewed by: darin
In WebMainResourceClient, make sure to always call receivedError before _clearProvisionalDataSource so that
receivedError works. This is done in multiple places, so I factored this out into one method interuptForPolicyChange.
* WebView.subproj/WebControllerPrivate.m:
(-[WebController _mainReceivedError:fromDataSource:]): added asserts for nil error, dataSource and frame
* WebView.subproj/WebMainResourceClient.m:
(-[WebMainResourceClient interruptForPolicyChange]): renamed from notifyDelegatesOfInterruptionByPolicyChange because it now also sets the provisionalDataSource on the frame to nil.
(-[WebMainResourceClient stopLoadingForPolicyChange]): call interruptForPolicyChange, stop load
(-[WebMainResourceClient continueAfterContentPolicy:response:]): call interruptForPolicyChange
WebBrowser:
Fixed: 3121284 - REGRESSION: Downloaded item's URL is left in address field
Reviewed by: darin
* BrowserWindowController.m:
(-[BrowserWindowController updateLocationFieldText]): If the provisional data source has ended in error, don't use its URL.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index 1b010d8..ffba134 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,19 @@
+2002-12-08 Chris Blumenberg <cblu at apple.com>
+
+ Fixed: 3121627 - REGRESSION: partial progress is left in address field after download
+
+ Reviewed by: darin
+
+ In WebMainResourceClient, make sure to always call receivedError before _clearProvisionalDataSource so that
+ receivedError works. This is done in multiple places, so I factored this out into one method interuptForPolicyChange.
+
+ * WebView.subproj/WebControllerPrivate.m:
+ (-[WebController _mainReceivedError:fromDataSource:]): added asserts for nil error, dataSource and frame
+ * WebView.subproj/WebMainResourceClient.m:
+ (-[WebMainResourceClient interruptForPolicyChange]): renamed from notifyDelegatesOfInterruptionByPolicyChange because it now also sets the provisionalDataSource on the frame to nil.
+ (-[WebMainResourceClient stopLoadingForPolicyChange]): call interruptForPolicyChange, stop load
+ (-[WebMainResourceClient continueAfterContentPolicy:response:]): call interruptForPolicyChange
+
2002-12-06 Trey Matteson <trey at apple.com>
Clean up some printfs. Use WebKitLogPageCache for page cache info.
diff --git a/WebKit/WebView.subproj/WebControllerPrivate.m b/WebKit/WebView.subproj/WebControllerPrivate.m
index 3887d21..4348015 100644
--- a/WebKit/WebView.subproj/WebControllerPrivate.m
+++ b/WebKit/WebView.subproj/WebControllerPrivate.m
@@ -152,7 +152,11 @@
- (void)_mainReceivedError: (WebError *)error fromDataSource: (WebDataSource *)dataSource
{
+ ASSERT(error);
+ ASSERT(dataSource);
+
WebFrame *frame = [dataSource webFrame];
+ ASSERT(frame);
[dataSource _setMainDocumentError: error];
[dataSource _setPrimaryLoadComplete: YES];
diff --git a/WebKit/WebView.subproj/WebMainResourceClient.m b/WebKit/WebView.subproj/WebMainResourceClient.m
index d64552c..9806ebd 100644
--- a/WebKit/WebView.subproj/WebMainResourceClient.m
+++ b/WebKit/WebView.subproj/WebMainResourceClient.m
@@ -90,11 +90,22 @@
[self release];
}
-
--(void)stopLoadingForPolicyChange
+- (void)interruptForPolicyChange
{
+ // Terminate the locationChangeDelegate correctly.
+ WebError *interruptError = [WebError errorWithCode:WebErrorLocationChangeInterruptedByPolicyChange inDomain:WebErrorDomainWebKit failingURL:nil];
+
+ // Must call receivedError before _clearProvisionalDataSource because
+ // if we remove the data source from the frame, we can't get back to the frame any more.
+ [self receivedError:interruptError];
[[dataSource webFrame] _clearProvisionalDataSource];
+
[self notifyDelegatesOfInterruptionByPolicyChange];
+}
+
+-(void)stopLoadingForPolicyChange
+{
+ [self interruptForPolicyChange];
[self cancelQuietly];
}
@@ -140,16 +151,6 @@
return newRequest;
}
-- (void)notifyDelegatesOfInterruptionByPolicyChange
-{
- // Terminate the locationChangeDelegate correctly.
- WebError *interruptError = [WebError errorWithCode:WebErrorLocationChangeInterruptedByPolicyChange inDomain:WebErrorDomainWebKit failingURL:nil];
-
- [self receivedError:interruptError];
-
- [super notifyDelegatesOfInterruptionByPolicyChange];
-}
-
-(void)continueAfterContentPolicy:(WebPolicyAction)contentPolicy response:(WebResourceResponse *)r
{
if (!defersBeforeCheckingPolicy) {
@@ -180,9 +181,8 @@
}
[dataSource _setDownloadPath:saveFilename];
}
-
- [[dataSource webFrame] _clearProvisionalDataSource];
- [self notifyDelegatesOfInterruptionByPolicyChange];
+
+ [self interruptForPolicyChange];
// Hand off the dataSource to the download handler. This will cause the remaining
// handle delegate callbacks to go to the controller's download delegate.
diff --git a/WebKit/WebView.subproj/WebMainResourceLoader.m b/WebKit/WebView.subproj/WebMainResourceLoader.m
index d64552c..9806ebd 100644
--- a/WebKit/WebView.subproj/WebMainResourceLoader.m
+++ b/WebKit/WebView.subproj/WebMainResourceLoader.m
@@ -90,11 +90,22 @@
[self release];
}
-
--(void)stopLoadingForPolicyChange
+- (void)interruptForPolicyChange
{
+ // Terminate the locationChangeDelegate correctly.
+ WebError *interruptError = [WebError errorWithCode:WebErrorLocationChangeInterruptedByPolicyChange inDomain:WebErrorDomainWebKit failingURL:nil];
+
+ // Must call receivedError before _clearProvisionalDataSource because
+ // if we remove the data source from the frame, we can't get back to the frame any more.
+ [self receivedError:interruptError];
[[dataSource webFrame] _clearProvisionalDataSource];
+
[self notifyDelegatesOfInterruptionByPolicyChange];
+}
+
+-(void)stopLoadingForPolicyChange
+{
+ [self interruptForPolicyChange];
[self cancelQuietly];
}
@@ -140,16 +151,6 @@
return newRequest;
}
-- (void)notifyDelegatesOfInterruptionByPolicyChange
-{
- // Terminate the locationChangeDelegate correctly.
- WebError *interruptError = [WebError errorWithCode:WebErrorLocationChangeInterruptedByPolicyChange inDomain:WebErrorDomainWebKit failingURL:nil];
-
- [self receivedError:interruptError];
-
- [super notifyDelegatesOfInterruptionByPolicyChange];
-}
-
-(void)continueAfterContentPolicy:(WebPolicyAction)contentPolicy response:(WebResourceResponse *)r
{
if (!defersBeforeCheckingPolicy) {
@@ -180,9 +181,8 @@
}
[dataSource _setDownloadPath:saveFilename];
}
-
- [[dataSource webFrame] _clearProvisionalDataSource];
- [self notifyDelegatesOfInterruptionByPolicyChange];
+
+ [self interruptForPolicyChange];
// Hand off the dataSource to the download handler. This will cause the remaining
// handle delegate callbacks to go to the controller's download delegate.
diff --git a/WebKit/WebView.subproj/WebViewPrivate.m b/WebKit/WebView.subproj/WebViewPrivate.m
index 3887d21..4348015 100644
--- a/WebKit/WebView.subproj/WebViewPrivate.m
+++ b/WebKit/WebView.subproj/WebViewPrivate.m
@@ -152,7 +152,11 @@
- (void)_mainReceivedError: (WebError *)error fromDataSource: (WebDataSource *)dataSource
{
+ ASSERT(error);
+ ASSERT(dataSource);
+
WebFrame *frame = [dataSource webFrame];
+ ASSERT(frame);
[dataSource _setMainDocumentError: error];
[dataSource _setPrimaryLoadComplete: YES];
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list