Index: Source/core/inspector/InspectorWorkerAgent.cpp |
diff --git a/Source/core/inspector/InspectorWorkerAgent.cpp b/Source/core/inspector/InspectorWorkerAgent.cpp |
index d0d965816b009573948fd1086a21e5d28423d014..184a7678ac66575b018fe291dba5083e7d3a1413 100644 |
--- a/Source/core/inspector/InspectorWorkerAgent.cpp |
+++ b/Source/core/inspector/InspectorWorkerAgent.cpp |
@@ -199,6 +199,15 @@ void InspectorWorkerAgent::setAutoconnectToWorkers(ErrorString*, bool value) |
m_state->setBoolean(WorkerAgentState::autoconnectToWorkers, value); |
} |
+void InspectorWorkerAgent::setTracingSessionId(const String& sessionId) |
+{ |
+ m_tracingSessionId = sessionId; |
+ if (sessionId.isEmpty()) |
+ return; |
+ for (DedicatedWorkers::iterator it = m_dedicatedWorkers.begin(); it != m_dedicatedWorkers.end(); ++it) |
+ it->key->writeTimelineStartedEvent(sessionId); |
+} |
+ |
bool InspectorWorkerAgent::shouldPauseDedicatedWorkerOnStart() |
{ |
return m_state->getBoolean(WorkerAgentState::autoconnectToWorkers); |
@@ -209,6 +218,8 @@ void InspectorWorkerAgent::didStartWorkerGlobalScope(WorkerGlobalScopeProxy* wor |
m_dedicatedWorkers.set(workerGlobalScopeProxy, url.string()); |
if (m_inspectorFrontend && m_state->getBoolean(WorkerAgentState::workerInspectionEnabled)) |
createWorkerFrontendChannel(workerGlobalScopeProxy, url.string()); |
+ if (!m_tracingSessionId.isEmpty()) |
+ workerGlobalScopeProxy->writeTimelineStartedEvent(m_tracingSessionId); |
} |
void InspectorWorkerAgent::workerGlobalScopeTerminated(WorkerGlobalScopeProxy* proxy) |