Index: content/browser/devtools/devtools_tracing_handler.cc |
diff --git a/content/browser/devtools/devtools_tracing_handler.cc b/content/browser/devtools/devtools_tracing_handler.cc |
index 7d308642212bf5c74d572babc1c029f180834af7..981c2047836269c9959959c32a324101ed73f4a1 100644 |
--- a/content/browser/devtools/devtools_tracing_handler.cc |
+++ b/content/browser/devtools/devtools_tracing_handler.cc |
@@ -48,7 +48,7 @@ void ReadFile( |
DevToolsTracingHandler::DevToolsTracingHandler( |
DevToolsTracingHandler::Target target) |
- : weak_factory_(this), target_(target) { |
+ : weak_factory_(this), target_(target), is_recording_(false) { |
RegisterCommandHandler(devtools::Tracing::start::kName, |
base::Bind(&DevToolsTracingHandler::OnStart, |
base::Unretained(this))); |
@@ -138,6 +138,7 @@ TracingController::Options DevToolsTracingHandler::TraceOptionsFromString( |
scoped_refptr<DevToolsProtocol::Response> |
DevToolsTracingHandler::OnStart( |
scoped_refptr<DevToolsProtocol::Command> command) { |
+ is_recording_ = true; |
std::string categories; |
base::DictionaryValue* params = command->params(); |
if (params) |
@@ -211,12 +212,14 @@ DevToolsTracingHandler::OnEnd( |
void DevToolsTracingHandler::DisableRecording( |
const TracingController::TracingFileResultCallback& callback) { |
+ is_recording_ = false; |
buffer_usage_poll_timer_.reset(); |
TracingController::GetInstance()->DisableRecording(base::FilePath(), |
callback); |
} |
void DevToolsTracingHandler::OnClientDetached() { |
+ if (is_recording_) |
DisableRecording(); |
} |