Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1245)

Unified Diff: content/browser/tab_contents/navigation_controller.cc

Issue 8760024: Cross-process postMessage (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/tab_contents/navigation_controller.cc
diff --git a/content/browser/tab_contents/navigation_controller.cc b/content/browser/tab_contents/navigation_controller.cc
index 40935b261de90773b656d76d0ec0933eaaaada0d..dc29b3b4b1f54ec52054b3f25ffbd25f81b4a882 100644
--- a/content/browser/tab_contents/navigation_controller.cc
+++ b/content/browser/tab_contents/navigation_controller.cc
@@ -225,7 +225,8 @@ bool NavigationController::IsInitialNavigation() {
NavigationEntry* NavigationController::CreateNavigationEntry(
const GURL& url, const GURL& referrer, content::PageTransition transition,
bool is_renderer_initiated, const std::string& extra_headers,
- content::BrowserContext* browser_context) {
+ content::BrowserContext* browser_context,
+ int64 opener_browsing_instance_frame_id) {
// Allow the browser URL handler to rewrite the URL. This will, for example,
// remove "view-source:" from the beginning of the URL to get the URL that
// will actually be loaded. This real URL won't be shown to the user, just
@@ -248,6 +249,8 @@ NavigationEntry* NavigationController::CreateNavigationEntry(
entry->set_user_typed_url(url);
entry->set_update_virtual_url_with_url(reverse_on_redirect);
entry->set_extra_headers(extra_headers);
+ entry->set_opener_browsing_instance_frame_id(
+ opener_browsing_instance_frame_id);
return entry;
}
@@ -501,14 +504,15 @@ void NavigationController::LoadURL(
const GURL& url,
const GURL& referrer,
content::PageTransition transition,
- const std::string& extra_headers) {
+ const std::string& extra_headers,
+ int64 opener_browsing_instance_frame_id) {
// The user initiated a load, we don't need to reload anymore.
+ DCHECK_EQ(opener_browsing_instance_frame_id, -1);
needs_reload_ = false;
- NavigationEntry* entry = CreateNavigationEntry(url, referrer, transition,
- false,
- extra_headers,
- browser_context_);
+ NavigationEntry* entry = CreateNavigationEntry(
+ url, referrer, transition, false, extra_headers,
+ browser_context_, opener_browsing_instance_frame_id);
LoadEntry(entry);
}
@@ -517,14 +521,14 @@ void NavigationController::LoadURLFromRenderer(
const GURL& url,
const GURL& referrer,
content::PageTransition transition,
- const std::string& extra_headers) {
+ const std::string& extra_headers,
+ int64 opener_browsing_instance_frame_id) {
// The user initiated a load, we don't need to reload anymore.
needs_reload_ = false;
- NavigationEntry* entry = CreateNavigationEntry(url, referrer, transition,
- true,
- extra_headers,
- browser_context_);
+ NavigationEntry* entry = CreateNavigationEntry(
+ url, referrer, transition, true, extra_headers,
+ browser_context_, opener_browsing_instance_frame_id);
LoadEntry(entry);
}

Powered by Google App Engine
This is Rietveld 408576698