Index: Source/core/workers/WorkerThread.cpp |
diff --git a/Source/core/workers/WorkerThread.cpp b/Source/core/workers/WorkerThread.cpp |
index e8c44a3c863da1942fe14243d6b8ba1f3218c482..be4ffb32c3f1661dfd14b6c8377ce348e32241b4 100644 |
--- a/Source/core/workers/WorkerThread.cpp |
+++ b/Source/core/workers/WorkerThread.cpp |
@@ -277,6 +277,7 @@ void WorkerThread::shutdown() |
// This should be called before we start the shutdown procedure. |
workerReportingProxy().willDestroyWorkerGlobalScope(); |
+ willShutdown(); |
workerGlobalScope()->dispose(); |
backingThread().removeTaskObserver(m_microtaskRunner.get()); |
@@ -456,6 +457,13 @@ v8::Isolate* WorkerThread::initializeIsolate() |
return isolate; |
} |
+void WorkerThread::willShutdown() |
+{ |
+ ASSERT(isCurrentThread()); |
+ ASSERT(m_isolate); |
+ ASSERT(m_workerGlobalScope->script()); |
+} |
+ |
void WorkerThread::willDestroyIsolate() |
{ |
ASSERT(isCurrentThread()); |