Index: content/browser/site_instance.cc |
diff --git a/content/browser/site_instance.cc b/content/browser/site_instance.cc |
index 2c5a1d76622c93def01d846d1193a0be108a680e..eb5ec071bdbc5d1a5293bdc352199baea4476e08 100644 |
--- a/content/browser/site_instance.cc |
+++ b/content/browser/site_instance.cc |
@@ -129,6 +129,11 @@ bool SiteInstance::HasWrongProcessForURL(const GURL& url) const { |
if (!HasProcess()) |
return false; |
+ // If the URL to navigate to can be associated with any site instance, |
+ // we want to keep it in the same process. |
+ if (IsURLSameAsAnySiteInstance(url)) |
+ return false; |
+ |
// If the site URL is an extension (e.g., for hosted apps or WebUI) but the |
// process is not (or vice versa), make sure we notice and fix it. |
GURL site_url = GetSiteForURL(browsing_instance_->browser_context(), url); |