diff options
Diffstat (limited to 'chromium/content/browser/site_instance_impl.cc')
-rw-r--r-- | chromium/content/browser/site_instance_impl.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/chromium/content/browser/site_instance_impl.cc b/chromium/content/browser/site_instance_impl.cc index e1a7560631b..0ec7f76e313 100644 --- a/chromium/content/browser/site_instance_impl.cc +++ b/chromium/content/browser/site_instance_impl.cc @@ -16,6 +16,7 @@ #include "content/browser/isolation_context.h" #include "content/browser/renderer_host/render_process_host_impl.h" #include "content/browser/storage_partition_impl.h" +#include "content/browser/webui/url_data_manager_backend.h" #include "content/public/browser/content_browser_client.h" #include "content/public/browser/render_process_host_factory.h" #include "content/public/browser/site_isolation_policy.h" @@ -608,10 +609,11 @@ bool SiteInstanceImpl::DoesSiteRequireDedicatedProcess( if (site_url.SchemeIs(kChromeErrorScheme)) return true; - // Isolate kChromeUIScheme pages from one another and from other kinds of - // schemes. - if (site_url.SchemeIs(content::kChromeUIScheme)) - return true; + // Isolate WebUI pages from one another and from other kinds of schemes. + for (const auto& webui_scheme : URLDataManagerBackend::GetWebUISchemes()) { + if (site_url.SchemeIs(webui_scheme)) + return true; + } // Let the content embedder enable site isolation for specific URLs. Use the // canonical site url for this check, so that schemes with nested origins |