2018-11-21 20:10:05 +00:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
|
|
From: deepak1556 <hop2deep@gmail.com>
|
2019-06-04 03:44:12 +00:00
|
|
|
Date: Mon, 3 Jun 2019 14:07:40 -0700
|
2018-11-21 20:10:05 +00:00
|
|
|
Subject: cross_site_document_resource_handler.patch
|
|
|
|
|
|
|
|
Add a content layer hook to disable CORB for a renderer process,
|
|
|
|
this patch can be removed once we switch to network service,
|
|
|
|
where the embedders have a chance to design their URLLoaders.
|
|
|
|
|
|
|
|
diff --git a/content/browser/loader/cross_site_document_resource_handler.cc b/content/browser/loader/cross_site_document_resource_handler.cc
|
2019-07-03 01:22:09 +00:00
|
|
|
index b9bd89a9c59515ac42702f010a0d3e9802a242fa..7f1e4ec569860e9bd1c608fd33f4fd6486e7fbd2 100644
|
2018-11-21 20:10:05 +00:00
|
|
|
--- a/content/browser/loader/cross_site_document_resource_handler.cc
|
|
|
|
+++ b/content/browser/loader/cross_site_document_resource_handler.cc
|
2019-07-03 01:22:09 +00:00
|
|
|
@@ -572,6 +572,9 @@ bool CrossSiteDocumentResourceHandler::ShouldBlockBasedOnHeaders(
|
2018-11-21 20:10:05 +00:00
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
+ if (GetContentClient()->browser()->ShouldBypassCORB(info->GetChildID()))
|
|
|
|
+ return false;
|
|
|
|
+
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
diff --git a/content/public/browser/content_browser_client.cc b/content/public/browser/content_browser_client.cc
|
2019-07-03 01:22:09 +00:00
|
|
|
index f847cd95b561b45e9ee67ab960d7eb6d0dd1c304..95712234dafc9d6d71c83c1f785cc41a0dc00278 100644
|
2018-11-21 20:10:05 +00:00
|
|
|
--- a/content/public/browser/content_browser_client.cc
|
|
|
|
+++ b/content/public/browser/content_browser_client.cc
|
2019-06-04 03:44:12 +00:00
|
|
|
@@ -71,6 +71,10 @@ std::unique_ptr<BrowserMainParts> ContentBrowserClient::CreateBrowserMainParts(
|
2019-05-31 22:47:18 +00:00
|
|
|
return nullptr;
|
2018-11-21 20:10:05 +00:00
|
|
|
}
|
|
|
|
|
2018-12-05 08:03:39 +00:00
|
|
|
+bool ContentBrowserClient::ShouldBypassCORB(int render_process_id) const {
|
2018-11-21 20:10:05 +00:00
|
|
|
+ return false;
|
|
|
|
+}
|
|
|
|
+
|
2019-05-31 22:47:18 +00:00
|
|
|
void ContentBrowserClient::PostAfterStartupTask(
|
|
|
|
const base::Location& from_here,
|
|
|
|
const scoped_refptr<base::TaskRunner>& task_runner,
|
2018-11-21 20:10:05 +00:00
|
|
|
diff --git a/content/public/browser/content_browser_client.h b/content/public/browser/content_browser_client.h
|
2019-07-03 01:22:09 +00:00
|
|
|
index 991afd44d9f4d9cf52b68909bbcd0f5cc9aedb37..0536e491fb2182db2a46c31cc7004cfb3b215c7c 100644
|
2018-11-21 20:10:05 +00:00
|
|
|
--- a/content/public/browser/content_browser_client.h
|
|
|
|
+++ b/content/public/browser/content_browser_client.h
|
2019-06-04 03:44:12 +00:00
|
|
|
@@ -252,6 +252,9 @@ class CONTENT_EXPORT ContentBrowserClient {
|
|
|
|
virtual std::unique_ptr<BrowserMainParts> CreateBrowserMainParts(
|
2019-05-31 22:47:18 +00:00
|
|
|
const MainFunctionParams& parameters);
|
2018-11-21 20:10:05 +00:00
|
|
|
|
|
|
|
+ // Electron: Allows bypassing CORB checks for a renderer process.
|
2018-12-05 08:03:39 +00:00
|
|
|
+ virtual bool ShouldBypassCORB(int render_process_id) const;
|
2018-11-21 20:10:05 +00:00
|
|
|
+
|
2019-05-31 22:47:18 +00:00
|
|
|
// Allows the embedder to change the default behavior of
|
|
|
|
// BrowserThread::PostAfterStartupTask to better match whatever
|
|
|
|
// definition of "startup" the embedder has in mind. This may be
|