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); |
} |