Index: Source/core/workers/WorkerThread.cpp |
diff --git a/Source/core/workers/WorkerThread.cpp b/Source/core/workers/WorkerThread.cpp |
index 07054617e440c2a51f813553ab7228acb6e84dc3..5be4464d3cd23ed3aab1fb1704f5741ad391f8c2 100644 |
--- a/Source/core/workers/WorkerThread.cpp |
+++ b/Source/core/workers/WorkerThread.cpp |
@@ -345,12 +345,12 @@ void WorkerThread::cleanup() |
m_thread->removeTaskObserver(m_microtaskRunner.get()); |
m_microtaskRunner = nullptr; |
+ m_terminationEvent->signal(); |
+ |
// Notify the proxy that the WorkerGlobalScope has been disposed of. |
// This can free this thread object, hence it must not be touched afterwards. |
workerReportingProxy().workerThreadTerminated(); |
- m_terminationEvent->signal(); |
- |
// Clean up PlatformThreadData before WTF::WTFThreadData goes away! |
PlatformThreadData::current().destroy(); |
} |