summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcevans@chromium.org <cevans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-06 20:56:55 +0000
committercevans@chromium.org <cevans@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-06 20:56:55 +0000
commit2287762d50d4506eabe05dfe7c08126f7a621b57 (patch)
treee244f5b5f58382ab077bf5138fe9451edea01b6a
parent237476d8bf2ac2e7a665c41ade31325f02ccfa16 (diff)
downloadchromium_src-2287762d50d4506eabe05dfe7c08126f7a621b57.zip
chromium_src-2287762d50d4506eabe05dfe7c08126f7a621b57.tar.gz
chromium_src-2287762d50d4506eabe05dfe7c08126f7a621b57.tar.bz2
Merge 80639 - Prevent changes to NavigationEntry's URL for a provisional redirect.BUG=77786TEST=Visit a page that redirects on reload, then stop before it finishes.Review URL: http://codereview.chromium.org/6793029
TBR=creis@chromium.org Review URL: http://codereview.chromium.org/6802022 git-svn-id: svn://svn.chromium.org/chrome/branches/696/src@80690 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--content/browser/tab_contents/tab_contents.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/content/browser/tab_contents/tab_contents.cc b/content/browser/tab_contents/tab_contents.cc
index 3def8e4..a9fe41c 100644
--- a/content/browser/tab_contents/tab_contents.cc
+++ b/content/browser/tab_contents/tab_contents.cc
@@ -1387,6 +1387,9 @@ void TabContents::OnDidStartProvisionalLoadForFrame(int64 frame_id,
void TabContents::OnDidRedirectProvisionalLoad(int32 page_id,
const GURL& source_url,
const GURL& target_url) {
+ // TODO(creis): Remove this method and have the pre-rendering code listen to
+ // the ResourceDispatcherHost's RESOURCE_RECEIVED_REDIRECT notification
+ // instead. See http://crbug.com/78512.
NavigationEntry* entry;
if (page_id == -1)
entry = controller_.pending_entry();
@@ -1394,7 +1397,6 @@ void TabContents::OnDidRedirectProvisionalLoad(int32 page_id,
entry = controller_.GetEntryWithPageID(GetSiteInstance(), page_id);
if (!entry || entry->url() != source_url)
return;
- entry->set_url(target_url);
// Check if the URL we are about to load has been prerendered by any chance,
// and use it if possible.