
* chore: bump chromium in DEPS to 07463d3cd628b037c11f36022cb4c788db4628e3 * chore: update patches * fix: Don't leak system network context when nw service is disabled1632494
NetworkService is now deleted by using SequnceLocalStorageSlot on the IO thread when the service is disabled, which expects all associated NetworkContexts on that sequence to be destroyed. * chore: bump chromium in DEPS to 7c16850e7e40990e141f47101b737ec1092175a1 * fix: Destroy all network contexts before primary network context * Simplify out-of-process service registration1615882
* [ThreadPool] Rename base::ThreadPool to base::ThreadPoolInstance1634851
* chore: update patches * fix: -Winconsistent-missing-override warnings * chore: bump chromium in DEPS to 93ebfaccc12715df1d5426797998eed0932f7ae1 * Change CreateBrowserMainParts to return unique_ptrs1632532
* chore: update patches * chore: bump chromium in DEPS to e656555ffb87bdd05e248d0a3ef9dd9d3433e17b * chore: bump chromium in DEPS to 111e7a8d2e3ae9d70e535009d6afb066ac906063 * chore: bump chromium in DEPS to 9b6b84670d32a7aff41ce73adc0eeee67d364989 * chore: update patches * chore: remove ShouldInterceptResourceAsStream as it is removed upstream Refs:1639597
* chore: remove ResourceDispatcherHostCreated as it is removed upstream Refs:1610892
* chore: CreateWithStrongBinding --> CreateWithSelfOwnedReceiver Refs:1636722
* chore: rename all blink media enums Refs:1639237
* chore: add accidentally removed patch content back
48 lines
2.1 KiB
Diff
48 lines
2.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Milan Burda <milan.burda@gmail.com>
|
|
Date: Thu, 11 Apr 2019 14:49:20 +0200
|
|
Subject: Add ContentGpuClient::PreCreateMessageLoop() callback
|
|
|
|
Invoke in GpuMain after SetErrorMode, before starting the message loop.
|
|
Allows Electron to restore WER when ELECTRON_DEFAULT_ERROR_MODE is set.
|
|
|
|
This should be upstreamed
|
|
|
|
diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
|
|
index 82f0c4f62be2f210db2c3ed1169c2a816c59cf1f..20dcb7dd1ee1172cfbf263f14724dd4701fa6eae 100644
|
|
--- a/content/gpu/gpu_main.cc
|
|
+++ b/content/gpu/gpu_main.cc
|
|
@@ -234,6 +234,10 @@ int GpuMain(const MainFunctionParams& parameters) {
|
|
|
|
logging::SetLogMessageHandler(GpuProcessLogMessageHandler);
|
|
|
|
+ auto* client = GetContentClient()->gpu();
|
|
+ if (client)
|
|
+ client->PreCreateMessageLoop();
|
|
+
|
|
// We are experiencing what appear to be memory-stomp issues in the GPU
|
|
// process. These issues seem to be impacting the message loop and listeners
|
|
// registered to it. Create the message loop on the heap to guard against
|
|
@@ -335,7 +339,6 @@ int GpuMain(const MainFunctionParams& parameters) {
|
|
|
|
GpuProcess gpu_process(io_thread_priority);
|
|
|
|
- auto* client = GetContentClient()->gpu();
|
|
if (client)
|
|
client->PostIOThreadCreated(gpu_process.io_task_runner());
|
|
|
|
diff --git a/content/public/gpu/content_gpu_client.h b/content/public/gpu/content_gpu_client.h
|
|
index 20e31e1bd96395cb4350aa6ae84cc16c4ca2116b..d89af81ef9426c197a62027b514011afd10ea3ce 100644
|
|
--- a/content/public/gpu/content_gpu_client.h
|
|
+++ b/content/public/gpu/content_gpu_client.h
|
|
@@ -35,6 +35,10 @@ class CONTENT_EXPORT ContentGpuClient {
|
|
public:
|
|
virtual ~ContentGpuClient() {}
|
|
|
|
+ // Allows the embedder to perform platform-specific initialization before
|
|
+ // creating the message loop.
|
|
+ virtual void PreCreateMessageLoop() {}
|
|
+
|
|
// Initializes the registry. |registry| will be passed to a ConnectionFilter
|
|
// (which lives on the IO thread). Unlike other childthreads, the client must
|
|
// register additional interfaces on this registry rather than just creating
|