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

Side by Side Diff: content/browser/frame_host/render_frame_host_manager.cc

Issue 1715993002: OOPIF: Fix remote frame navigations from extension pages. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Resolve mid-air collision in FlagExpectations/site-per-process Created 4 years, 9 months 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/frame_host/render_frame_host_manager.h" 5 #include "content/browser/frame_host/render_frame_host_manager.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <utility> 10 #include <utility>
(...skipping 461 matching lines...) Expand 10 before | Expand all | Expand 10 after
472 DCHECK_EQ(process_id, global_request_id.child_id); 472 DCHECK_EQ(process_id, global_request_id.child_id);
473 473
474 // Treat the last URL in the chain as the destination and the remainder as 474 // Treat the last URL in the chain as the destination and the remainder as
475 // the redirect chain. 475 // the redirect chain.
476 CHECK(transfer_url_chain.size()); 476 CHECK(transfer_url_chain.size());
477 GURL transfer_url = transfer_url_chain.back(); 477 GURL transfer_url = transfer_url_chain.back();
478 std::vector<GURL> rest_of_chain = transfer_url_chain; 478 std::vector<GURL> rest_of_chain = transfer_url_chain;
479 rest_of_chain.pop_back(); 479 rest_of_chain.pop_back();
480 480
481 pending_render_frame_host->frame_tree_node()->navigator()->RequestTransferURL( 481 pending_render_frame_host->frame_tree_node()->navigator()->RequestTransferURL(
482 pending_render_frame_host, transfer_url, rest_of_chain, referrer, 482 pending_render_frame_host, transfer_url, nullptr, rest_of_chain, referrer,
483 page_transition, global_request_id, should_replace_current_entry); 483 page_transition, global_request_id, should_replace_current_entry);
484 484
485 // The transferring request was only needed during the RequestTransferURL 485 // The transferring request was only needed during the RequestTransferURL
486 // call, so it is safe to clear at this point. 486 // call, so it is safe to clear at this point.
487 cross_site_transferring_request_.reset(); 487 cross_site_transferring_request_.reset();
488 488
489 // If the navigation continued, the NavigationHandle should have been 489 // If the navigation continued, the NavigationHandle should have been
490 // transfered to a RenderFrameHost. In the other cases, it should be cleared. 490 // transfered to a RenderFrameHost. In the other cases, it should be cleared.
491 transfer_navigation_handle_.reset(); 491 transfer_navigation_handle_.reset();
492 492
(...skipping 2005 matching lines...) Expand 10 before | Expand all | Expand 10 after
2498 int RenderFrameHostManager::GetOpenerRoutingID(SiteInstance* instance) { 2498 int RenderFrameHostManager::GetOpenerRoutingID(SiteInstance* instance) {
2499 if (!frame_tree_node_->opener()) 2499 if (!frame_tree_node_->opener())
2500 return MSG_ROUTING_NONE; 2500 return MSG_ROUTING_NONE;
2501 2501
2502 return frame_tree_node_->opener() 2502 return frame_tree_node_->opener()
2503 ->render_manager() 2503 ->render_manager()
2504 ->GetRoutingIdForSiteInstance(instance); 2504 ->GetRoutingIdForSiteInstance(instance);
2505 } 2505 }
2506 2506
2507 } // namespace content 2507 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/frame_host/navigator_impl.cc ('k') | content/browser/frame_host/render_frame_proxy_host.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698