Index: Source/platform/heap/ThreadState.cpp |
diff --git a/Source/platform/heap/ThreadState.cpp b/Source/platform/heap/ThreadState.cpp |
index dcb601d0303c5530c240cb241aecbff9eef83b17..e872e433d319ace02a402ef969be09ca5b30ed79 100644 |
--- a/Source/platform/heap/ThreadState.cpp |
+++ b/Source/platform/heap/ThreadState.cpp |
@@ -428,8 +428,6 @@ void ThreadState::cleanupPages() |
void ThreadState::cleanup() |
{ |
checkThread(); |
- // Finish sweeping. |
- completeSweep(); |
{ |
// Grab the threadAttachMutex to ensure only one thread can shutdown at |
// a time and that no other thread can do a global GC. It also allows |
@@ -439,6 +437,9 @@ void ThreadState::cleanup() |
// GC. |
SafePointAwareMutexLocker locker(threadAttachMutex(), NoHeapPointersOnStack); |
+ // Finish sweeping. |
+ completeSweep(); |
+ |
// From here on ignore all conservatively discovered |
// pointers into the heap owned by this thread. |
m_isTerminating = true; |