Index: third_party/WebKit/Source/modules/compositorworker/CompositorWorker.cpp |
diff --git a/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.cpp b/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.cpp |
index 3eefc6ac2809d657c9ed86b7a22aaaa1ff712249..86377397e51e93a8fd6c8013a280bb16af92fd8f 100644 |
--- a/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.cpp |
+++ b/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.cpp |
@@ -10,6 +10,7 @@ |
#include "core/workers/WorkerClients.h" |
#include "modules/EventTargetModules.h" |
#include "modules/compositorworker/CompositorWorkerMessagingProxy.h" |
+#include "modules/compositorworker/CompositorWorkerThread.h" |
namespace blink { |
@@ -20,6 +21,11 @@ inline CompositorWorker::CompositorWorker(ExecutionContext* context) |
CompositorWorker* CompositorWorker::create(ExecutionContext* context, const String& url, ExceptionState& exceptionState) |
{ |
+ // Ensure the compositor worker backing thread is ready before we try to |
+ // initialize the CompositorWorker so that we can construct oilpan |
+ // objects on the compositor thread referenced from the worker clients. |
+ CompositorWorkerThread::ensureSharedBackingThread(); |
haraken
2016/05/11 00:18:31
Sorry for not being clear: I'm suggesting to move
flackr
2016/05/18 05:26:50
Ah, my apologies. Done.
|
+ |
ASSERT(isMainThread()); |
Document* document = toDocument(context); |
if (!document->page()) { |