Index: third_party/WebKit/Source/core/workers/WorkerInspectorProxy.cpp |
diff --git a/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.cpp b/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.cpp |
index 42264080e59f042431b684d6980ebef6165d718f..6abe3aef9ad5b9371dbbf28d0712ae34da21a907 100644 |
--- a/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.cpp |
+++ b/third_party/WebKit/Source/core/workers/WorkerInspectorProxy.cpp |
@@ -33,11 +33,20 @@ WorkerInspectorProxy::~WorkerInspectorProxy() |
{ |
} |
+WorkerThreadStartMode WorkerInspectorProxy::workerStartMode(ExecutionContext* context) |
+{ |
+ if (InspectorInstrumentation::shouldWaitForDebuggerOnWorkerStart(context)) |
+ return PauseWorkerGlobalScopeOnStart; |
+ return DontPauseWorkerGlobalScopeOnStart; |
+} |
+ |
void WorkerInspectorProxy::workerThreadCreated(ExecutionContext* context, WorkerThread* workerThread, const KURL& url) |
{ |
m_workerThread = workerThread; |
m_executionContext = context; |
- InspectorInstrumentation::didStartWorker(context, this, url); |
+ // We expect everyone starting worker thread to synchronously ask for workerStartMode right before. |
+ bool waitingForDebugger = InspectorInstrumentation::shouldWaitForDebuggerOnWorkerStart(context); |
+ InspectorInstrumentation::didStartWorker(context, this, url, waitingForDebugger); |
} |
void WorkerInspectorProxy::workerThreadTerminated() |