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

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

Issue 2716583003: Rename Origin.unique() to opaque().
Patch Set: Mac fixes Created 3 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 <string> 10 #include <string>
(...skipping 1591 matching lines...) Expand 10 before | Expand all | Expand 10 after
1602 // we compare against the last successful commit when deciding whether to swap 1602 // we compare against the last successful commit when deciding whether to swap
1603 // this time. 1603 // this time.
1604 if (SiteInstance::IsSameWebSite(browser_context, 1604 if (SiteInstance::IsSameWebSite(browser_context,
1605 candidate->last_successful_url(), dest_url)) { 1605 candidate->last_successful_url(), dest_url)) {
1606 return true; 1606 return true;
1607 } 1607 }
1608 1608
1609 // It is possible that last_successful_url() was a nonstandard scheme (for 1609 // It is possible that last_successful_url() was a nonstandard scheme (for
1610 // example, "about:blank"). If so, examine the replicated origin to determine 1610 // example, "about:blank"). If so, examine the replicated origin to determine
1611 // the site. 1611 // the site.
1612 if (!candidate->GetLastCommittedOrigin().unique() && 1612 if (!candidate->GetLastCommittedOrigin().opaque() &&
1613 SiteInstance::IsSameWebSite( 1613 SiteInstance::IsSameWebSite(
1614 browser_context, 1614 browser_context,
1615 GURL(candidate->GetLastCommittedOrigin().Serialize()), dest_url)) { 1615 GURL(candidate->GetLastCommittedOrigin().Serialize()), dest_url)) {
1616 return true; 1616 return true;
1617 } 1617 }
1618 1618
1619 // Not same-site. 1619 // Not same-site.
1620 return false; 1620 return false;
1621 } 1621 }
1622 1622
(...skipping 1130 matching lines...) Expand 10 before | Expand all | Expand 10 after
2753 // and the frame being navigated differ, |source_instance| is set to the 2753 // and the frame being navigated differ, |source_instance| is set to the
2754 // SiteInstance of the initiating frame. |dest_instance| is present on session 2754 // SiteInstance of the initiating frame. |dest_instance| is present on session
2755 // history navigations. The two cannot be set simultaneously. 2755 // history navigations. The two cannot be set simultaneously.
2756 DCHECK(!source_instance || !dest_instance); 2756 DCHECK(!source_instance || !dest_instance);
2757 2757
2758 // Don't swap for subframes unless we are in an OOPIF-enabled mode. We can 2758 // Don't swap for subframes unless we are in an OOPIF-enabled mode. We can
2759 // get here in tests for subframes (e.g., NavigateFrameToURL). 2759 // get here in tests for subframes (e.g., NavigateFrameToURL).
2760 if (!SiteIsolationPolicy::AreCrossProcessFramesPossible()) 2760 if (!SiteIsolationPolicy::AreCrossProcessFramesPossible())
2761 return false; 2761 return false;
2762 2762
2763 // If dest_url is a unique origin like about:blank, then the need for a swap 2763 // If dest_url is an opaque origin like about:blank, then the need for a swap
2764 // is determined by the source_instance or dest_instance. 2764 // is determined by the source_instance or dest_instance.
2765 GURL resolved_url = dest_url; 2765 GURL resolved_url = dest_url;
2766 if (url::Origin(resolved_url).unique()) { 2766 if (url::Origin(resolved_url).opaque()) {
2767 if (source_instance) { 2767 if (source_instance) {
2768 resolved_url = source_instance->GetSiteURL(); 2768 resolved_url = source_instance->GetSiteURL();
2769 } else if (dest_instance) { 2769 } else if (dest_instance) {
2770 resolved_url = dest_instance->GetSiteURL(); 2770 resolved_url = dest_instance->GetSiteURL();
2771 } else { 2771 } else {
2772 // If there is no SiteInstance this unique origin can be associated with, 2772 // If there is no SiteInstance this opaque origin can be associated with,
2773 // then we should avoid a process swap. 2773 // then we should avoid a process swap.
2774 return false; 2774 return false;
2775 } 2775 }
2776 } 2776 }
2777 2777
2778 // If we are in an OOPIF mode that only applies to some sites, only swap if 2778 // If we are in an OOPIF mode that only applies to some sites, only swap if
2779 // the policy determines that a transfer would have been needed. We can get 2779 // the policy determines that a transfer would have been needed. We can get
2780 // here for session restore. 2780 // here for session restore.
2781 if (!IsRendererTransferNeededForNavigation(render_frame_host_.get(), 2781 if (!IsRendererTransferNeededForNavigation(render_frame_host_.get(),
2782 resolved_url)) { 2782 resolved_url)) {
2783 DCHECK(!dest_instance || 2783 DCHECK(!dest_instance ||
2784 dest_instance == render_frame_host_->GetSiteInstance()); 2784 dest_instance == render_frame_host_->GetSiteInstance());
2785 return false; 2785 return false;
2786 } 2786 }
2787 2787
2788 return true; 2788 return true;
2789 } 2789 }
2790 2790
2791 } // namespace content 2791 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698