Index: Source/core/inspector/InspectorTracingAgent.cpp |
diff --git a/Source/core/inspector/InspectorTracingAgent.cpp b/Source/core/inspector/InspectorTracingAgent.cpp |
index 8e8edac01e7a874a5244db6f0744005010bf7627..6930a940d76c5664eabc0e7cd0d0133b56aa0f7a 100644 |
--- a/Source/core/inspector/InspectorTracingAgent.cpp |
+++ b/Source/core/inspector/InspectorTracingAgent.cpp |
@@ -40,6 +40,7 @@ void InspectorTracingAgent::restore() |
void InspectorTracingAgent::start(ErrorString*, const String& categoryFilter, const String&, const double*, PassRefPtrWillBeRawPtr<StartCallback> callback) |
{ |
+ ASSERT(m_state->getString(TracingAgentState::sessionId).isEmpty()); |
m_state->setString(TracingAgentState::sessionId, IdentifiersFactory::createIdentifier()); |
m_client->enableTracing(categoryFilter); |
emitMetadataEvents(); |
@@ -49,7 +50,7 @@ void InspectorTracingAgent::start(ErrorString*, const String& categoryFilter, co |
void InspectorTracingAgent::end(ErrorString* errorString, PassRefPtrWillBeRawPtr<EndCallback> callback) |
{ |
m_client->disableTracing(); |
- m_workerAgent->setTracingSessionId(String()); |
+ resetSessionId(); |
callback->sendSuccess(); |
} |
@@ -77,4 +78,15 @@ void InspectorTracingAgent::setFrontend(InspectorFrontend* frontend) |
m_frontend = frontend->tracing(); |
} |
+void InspectorTracingAgent::clearFrontend() |
+{ |
+ resetSessionId(); |
+} |
+ |
+void InspectorTracingAgent::resetSessionId() |
+{ |
+ m_state->remove(TracingAgentState::sessionId); |
+ m_workerAgent->setTracingSessionId(sessionId()); |
+} |
+ |
} |