[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
trey
trey at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 08:49:01 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 16c808ac533ba7c86c3211d3c2f3f80ae301b0ec
Author: trey <trey at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Jul 7 21:36:48 2004 +0000
3719051 - Safari doesn't update form inputs when a page was refreshed by javascript window.location
... and at least 5 other cases in Radar
Very similar problem to the Harvard PIN bug. We need to be sure
to not carry any state over when we are processing a client
redirect, which reuses the same WebHistoryItem.
Reviewed by John.
* WebView.subproj/WebFrame.m:
(-[WebFrame _transitionToCommitted:]): Comment
(-[WebFrame _opened]): Clear form and scroll state on client redirect.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index fa64dda..a37a2dc 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,18 @@
+2004-07-07 Trey Matteson <trey at apple.com>
+
+ 3719051 - Safari doesn't update form inputs when a page was refreshed by javascript window.location
+ ... and at least 5 other cases in Radar
+
+ Very similar problem to the Harvard PIN bug. We need to be sure
+ to not carry any state over when we are processing a client
+ redirect, which reuses the same WebHistoryItem.
+
+ Reviewed by John.
+
+ * WebView.subproj/WebFrame.m:
+ (-[WebFrame _transitionToCommitted:]): Comment
+ (-[WebFrame _opened]): Clear form and scroll state on client redirect.
+
2004-07-06 Chris Blumenberg <cblu at apple.com>
Fixed: <rdar://problem/3715785> multiple frame injection vulnerability reported by Secunia, affects almost all browsers
diff --git a/WebKit/WebView.subproj/WebFrame.m b/WebKit/WebView.subproj/WebFrame.m
index e4c07c1..06c065e 100644
--- a/WebKit/WebView.subproj/WebFrame.m
+++ b/WebKit/WebView.subproj/WebFrame.m
@@ -755,6 +755,9 @@ NSString *WebPageCacheDocumentViewKey = @"WebPageCacheDocumentViewKey";
// clear out the form data so we don't repost it to the wrong place if we
// ever go back/forward to this item
[[_private currentItem] _setFormInfoFromRequest:request];
+
+ // We must also clear out form data so we don't try to restore it into the incoming page,
+ // see -_opened
}
}
[self _makeDocumentView];
@@ -951,6 +954,14 @@ static CFAbsoluteTime _timeOfLastCompletedLoad;
// Called after we send an openURL:... down to WebCore.
- (void)_opened
{
+ if ([self _loadType] == WebFrameLoadTypeStandard && [[self dataSource] _isClientRedirect]) {
+ // Clear out form data so we don't try to restore it into the incoming page. Must happen after
+ // khtml has closed the URL and saved away the form state.
+ WebHistoryItem *item = [_private currentItem];
+ [item setDocumentState:nil];
+ [item setScrollPoint:NSZeroPoint];
+ }
+
if ([[self dataSource] _loadingFromPageCache]){
// Force a layout to update view size and thereby update scrollbars.
NSView <WebDocumentView> *view = [[self frameView] documentView];
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list