diff --git a/atom/browser/javascript_environment.cc b/atom/browser/javascript_environment.cc index 7a4fcdb069f1d..746ee5594645e 100644 --- a/atom/browser/javascript_environment.cc +++ b/atom/browser/javascript_environment.cc @@ -46,8 +46,9 @@ v8::Isolate* JavascriptEnvironment::Initialize(uv_loop_t* event_loop) { // The V8Platform of gin relies on Chromium's task schedule, which has not // been started at this point, so we have to rely on Node's V8Platform. - auto* tracing_controller = new v8::TracingController(); - node::tracing::TraceEventHelper::SetTracingController(tracing_controller); + auto* tracing_agent = node::CreateAgent(); + auto* tracing_controller = tracing_agent->GetTracingController(); + node::tracing::TraceEventHelper::SetAgent(tracing_agent); platform_ = node::CreatePlatform( base::RecommendedMaxNumberOfThreadsInPool(3, 8, 0.1, 0), tracing_controller); diff --git a/atom/common/node_includes.h b/atom/common/node_includes.h index 9e440442b2b46..f328ef5ea9e36 100644 --- a/atom/common/node_includes.h +++ b/atom/common/node_includes.h @@ -45,7 +45,7 @@ namespace tracing { class TraceEventHelper { public: static v8::TracingController* GetTracingController(); - static void SetTracingController(v8::TracingController* controller); + static void SetAgent(node::tracing::Agent* agent); }; } // namespace tracing diff --git a/atom/renderer/atom_renderer_client.cc b/atom/renderer/atom_renderer_client.cc index e886f771509c6..5d2429ec06c58 100644 --- a/atom/renderer/atom_renderer_client.cc +++ b/atom/renderer/atom_renderer_client.cc @@ -108,8 +108,7 @@ void AtomRendererClient::DidCreateScriptContext( // Setup node tracing controller. if (!node::tracing::TraceEventHelper::GetTracingController()) - node::tracing::TraceEventHelper::SetTracingController( - new v8::TracingController()); + node::tracing::TraceEventHelper::SetAgent(node::CreateAgent()); // Setup node environment for each window. node::Environment* env = node_bindings_->CreateEnvironment(context);