Index: content/shell/shell.cc |
diff --git a/content/shell/shell.cc b/content/shell/shell.cc |
index 0175bfe04f63deda0da4258dac5dc08a3ee83bb1..0fadcf8d41673fa6169b60d666efb103f396ac51 100644 |
--- a/content/shell/shell.cc |
+++ b/content/shell/shell.cc |
@@ -232,8 +232,22 @@ WebContents* Shell::OpenURLFromTab(WebContents* source, |
const OpenURLParams& params) { |
// The only one we implement for now. |
DCHECK(params.disposition == CURRENT_TAB); |
- source->GetController().LoadURL( |
- params.url, params.referrer, params.transition, std::string()); |
+ NavigationController::LoadURLParams load_url_params(params.url); |
+ load_url_params.referrer = params.referrer; |
+ load_url_params.transition_type = params.transition; |
+ load_url_params.extra_headers = params.extra_headers; |
+ load_url_params.should_replace_current_entry = |
+ params.should_replace_current_entry; |
+ |
+ if (params.transferred_global_request_id != GlobalRequestID()) { |
+ load_url_params.is_renderer_initiated = params.is_renderer_initiated; |
+ load_url_params.transferred_global_request_id = |
+ params.transferred_global_request_id; |
+ } else if (params.is_renderer_initiated) { |
+ load_url_params.is_renderer_initiated = true; |
+ } |
+ |
+ source->GetController().LoadURLWithParams(load_url_params); |
return source; |
} |