[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