Chromium Code Reviews| Index: third_party/WebKit/Source/core/workers/WorkerThread.cpp |
| diff --git a/third_party/WebKit/Source/core/workers/WorkerThread.cpp b/third_party/WebKit/Source/core/workers/WorkerThread.cpp |
| index a65ac1332f872d3b5ea5ada1b73952c5962c55fd..7c94f4e23ea8808393099d953c473c5e4e33ed5b 100644 |
| --- a/third_party/WebKit/Source/core/workers/WorkerThread.cpp |
| +++ b/third_party/WebKit/Source/core/workers/WorkerThread.cpp |
| @@ -31,6 +31,7 @@ |
| #include "bindings/core/v8/V8GCController.h" |
| #include "bindings/core/v8/V8IdleTaskRunner.h" |
| #include "bindings/core/v8/WorkerOrWorkletScriptController.h" |
| +#include "core/inspector/ConsoleMessageStorage.h" |
| #include "core/inspector/InspectorInstrumentation.h" |
| #include "core/inspector/InspectorTaskRunner.h" |
| #include "core/inspector/WorkerInspectorController.h" |
| @@ -492,6 +493,7 @@ void WorkerThread::initializeOnWorkerThread(std::unique_ptr<WorkerThreadStartupD |
| // Optimize for memory usage instead of latency for the worker isolate. |
| isolate()->IsolateInBackgroundNotification(); |
| + m_consoleMessageStorage = new ConsoleMessageStorage(); |
| m_globalScope = createWorkerGlobalScope(std::move(startupData)); |
| m_workerInspectorController = WorkerInspectorController::create(this); |
| if (m_globalScope->isWorkerGlobalScope()) |
| @@ -563,6 +565,8 @@ void WorkerThread::prepareForShutdownOnWorkerThread() |
| m_workerInspectorController->dispose(); |
| m_workerInspectorController.clear(); |
| } |
| + if (m_consoleMessageStorage) |
|
yhirano
2016/08/09 06:33:06
Why don't you clear the pointer unconditionally?
ikilpatrick
2016/08/09 14:13:58
Done.
|
| + m_consoleMessageStorage.clear(); |
| workerBackingThread().backingThread().removeTaskObserver(m_microtaskRunner.get()); |
| } |