Index: Source/modules/compositorworker/CompositorWorkerManager.cpp |
diff --git a/Source/modules/compositorworker/CompositorWorkerManager.cpp b/Source/modules/compositorworker/CompositorWorkerManager.cpp |
index df763223890805eee9222059a3006125aa4f5da8..62dc23b4c02a2ce82f05a4a82fc2cac2460c447f 100644 |
--- a/Source/modules/compositorworker/CompositorWorkerManager.cpp |
+++ b/Source/modules/compositorworker/CompositorWorkerManager.cpp |
@@ -89,8 +89,8 @@ void CompositorWorkerManager::initializeBackingThread() |
m_isolate = V8PerIsolateData::initialize(); |
V8Initializer::initializeWorker(m_isolate); |
- m_interruptor = adoptPtr(new V8IsolateInterruptor(m_isolate)); |
- ThreadState::current()->addInterruptor(m_interruptor.get()); |
+ OwnPtr<V8IsolateInterruptor> interruptor = adoptPtr(new V8IsolateInterruptor(m_isolate)); |
+ ThreadState::current()->addInterruptor(interruptor.release()); |
ThreadState::current()->registerTraceDOMWrappers(m_isolate, V8GCController::traceDOMWrappers); |
} |
@@ -121,10 +121,8 @@ void CompositorWorkerManager::willDestroyIsolate() |
{ |
MutexLocker lock(m_mutex); |
ASSERT(m_thread->isCurrentThread()); |
- if (m_workerCount == 1) { |
+ if (m_workerCount == 1) |
V8PerIsolateData::willBeDestroyed(m_isolate); |
- ThreadState::current()->removeInterruptor(m_interruptor.get()); |
- } |
} |
void CompositorWorkerManager::destroyIsolate() |