| Index: Source/platform/heap/ThreadState.h | 
| diff --git a/Source/platform/heap/ThreadState.h b/Source/platform/heap/ThreadState.h | 
| index 5d93b22443d6fdd4070326c53671b7770a675050..d44c39c32daa7d57547ba208aebe2b50c0593265 100644 | 
| --- a/Source/platform/heap/ThreadState.h | 
| +++ b/Source/platform/heap/ThreadState.h | 
| @@ -196,7 +196,6 @@ public: | 
| IdleGCScheduled, | 
| PreciseGCScheduled, | 
| FullGCScheduled, | 
| -        StoppingOtherThreads, | 
| GCRunning, | 
| EagerSweepScheduled, | 
| LazySweepScheduled, | 
| @@ -356,7 +355,11 @@ public: | 
| void leaveNoAllocationScope() { m_noAllocationCount--; } | 
| bool isGCForbidden() const { return m_gcForbiddenCount; } | 
| void enterGCForbiddenScope() { m_gcForbiddenCount++; } | 
| -    void leaveGCForbiddenScope() { m_gcForbiddenCount--; } | 
| +    void leaveGCForbiddenScope() | 
| +    { | 
| +        ASSERT(m_gcForbiddenCount > 0); | 
| +        m_gcForbiddenCount--; | 
| +    } | 
| bool sweepForbidden() const { return m_sweepForbidden; } | 
|  | 
| void prepareRegionTree(); | 
| @@ -563,7 +566,6 @@ public: | 
| } | 
| void leaveGCForbiddenScopeIfNeeded(GarbageCollectedMixinConstructorMarker* gcMixinMarker) | 
| { | 
| -        ASSERT(m_gcForbiddenCount > 0); | 
| if (m_gcMixinMarker == gcMixinMarker) { | 
| leaveGCForbiddenScope(); | 
| m_gcMixinMarker = nullptr; | 
|  |