From 2dcee2ccfc2f69f05ed496b5f2514081adb0b518 Mon Sep 17 00:00:00 2001 From: Marshall Greenblatt Date: Fri, 13 May 2022 12:03:50 +0300 Subject: [PATCH] alloy: Disable ProxyErrorClient callbacks when extensions are disabled (fixes issue #2830) --- patch/patch.cfg | 8 ++++- patch/patches/chrome_browser_net_proxy.patch | 33 ++++++++++++++++++++ 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 patch/patches/chrome_browser_net_proxy.patch diff --git a/patch/patch.cfg b/patch/patch.cfg index 1c5b2ffda..a628654cd 100644 --- a/patch/patch.cfg +++ b/patch/patch.cfg @@ -235,7 +235,13 @@ patches = [ 'name': 'chrome_browser_extensions', }, { - # Don't initialize ExtensionSystemFactory when extensions are disabled. + # alloy: Disable ProxyErrorClient callbacks when extensions are disabled. + # https://bitbucket.org/chromiumembedded/cef/issues/2830 + 'name': 'chrome_browser_net_proxy', + }, + { + # alloy: Don't initialize ExtensionSystemFactory when extensions are + # disabled. # https://bitbucket.org/chromiumembedded/cef/issues/2852 'name': 'chrome_browser_themes', }, diff --git a/patch/patches/chrome_browser_net_proxy.patch b/patch/patches/chrome_browser_net_proxy.patch new file mode 100644 index 000000000..e9cac0255 --- /dev/null +++ b/patch/patches/chrome_browser_net_proxy.patch @@ -0,0 +1,33 @@ +diff --git chrome/browser/net/proxy_config_monitor.cc chrome/browser/net/proxy_config_monitor.cc +index 88fad9811069e..9973245011e24 100644 +--- chrome/browser/net/proxy_config_monitor.cc ++++ chrome/browser/net/proxy_config_monitor.cc +@@ -9,6 +9,7 @@ + #include "base/strings/utf_string_conversions.h" + #include "build/build_config.h" + #include "build/chromeos_buildflags.h" ++#include "cef/libcef/features/runtime.h" + #include "chrome/browser/browser_process.h" + #include "chrome/browser/net/proxy_service_factory.h" + #include "chrome/browser/profiles/profile.h" +@@ -21,6 +22,10 @@ + #include "chrome/browser/ash/profiles/profile_helper.h" + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + ++#if BUILDFLAG(ENABLE_CEF) ++#include "cef/libcef/common/extensions/extensions_util.h" ++#endif ++ + #if BUILDFLAG(ENABLE_EXTENSIONS) + #include "chrome/browser/extensions/api/proxy/proxy_api.h" + #endif +@@ -89,6 +94,9 @@ void ProxyConfigMonitor::AddToNetworkContextParams( + .InitWithNewPipeAndPassReceiver()); + + #if BUILDFLAG(ENABLE_EXTENSIONS) ++#if BUILDFLAG(ENABLE_CEF) ++ if (!cef::IsAlloyRuntimeEnabled() || extensions::ExtensionsEnabled()) ++#endif + error_receiver_set_.Add(this, network_context_params->proxy_error_client + .InitWithNewPipeAndPassReceiver()); + #endif