| OLD | NEW |
| 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 <string> | 10 #include <string> |
| (...skipping 794 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 805 // IPC, and will then proceed in the same renderer. In site-per-process | 805 // IPC, and will then proceed in the same renderer. In site-per-process |
| 806 // mode, it is possible for renderer-intiated navigations to be allowed to | 806 // mode, it is possible for renderer-intiated navigations to be allowed to |
| 807 // go cross-process. Check it first. | 807 // go cross-process. Check it first. |
| 808 bool can_renderer_initiate_transfer = | 808 bool can_renderer_initiate_transfer = |
| 809 render_frame_host_->IsRenderFrameLive() && | 809 render_frame_host_->IsRenderFrameLive() && |
| 810 ShouldMakeNetworkRequestForURL(request.common_params().url) && | 810 ShouldMakeNetworkRequestForURL(request.common_params().url) && |
| 811 IsRendererTransferNeededForNavigation(render_frame_host_.get(), | 811 IsRendererTransferNeededForNavigation(render_frame_host_.get(), |
| 812 request.common_params().url); | 812 request.common_params().url); |
| 813 | 813 |
| 814 no_renderer_swap |= | 814 no_renderer_swap |= |
| 815 !request.browser_initiated() && !can_renderer_initiate_transfer; | 815 !request.may_transfer() && !can_renderer_initiate_transfer; |
| 816 } else { | 816 } else { |
| 817 // Subframe navigations will use the current renderer, unless specifically | 817 // Subframe navigations will use the current renderer, unless specifically |
| 818 // allowed to swap processes. | 818 // allowed to swap processes. |
| 819 no_renderer_swap |= !CanSubframeSwapProcess(request.common_params().url, | 819 no_renderer_swap |= !CanSubframeSwapProcess(request.common_params().url, |
| 820 request.source_site_instance(), | 820 request.source_site_instance(), |
| 821 request.dest_site_instance()); | 821 request.dest_site_instance()); |
| 822 } | 822 } |
| 823 | 823 |
| 824 if (no_renderer_swap) { | 824 if (no_renderer_swap) { |
| 825 // GetFrameHostForNavigation will be called more than once during a | 825 // GetFrameHostForNavigation will be called more than once during a |
| (...skipping 1925 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2751 resolved_url)) { | 2751 resolved_url)) { |
| 2752 DCHECK(!dest_instance || | 2752 DCHECK(!dest_instance || |
| 2753 dest_instance == render_frame_host_->GetSiteInstance()); | 2753 dest_instance == render_frame_host_->GetSiteInstance()); |
| 2754 return false; | 2754 return false; |
| 2755 } | 2755 } |
| 2756 | 2756 |
| 2757 return true; | 2757 return true; |
| 2758 } | 2758 } |
| 2759 | 2759 |
| 2760 } // namespace content | 2760 } // namespace content |
| OLD | NEW |