Index: third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp |
diff --git a/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp b/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp |
index 801aa58343f679f17581680a5161ca964526af4b..8bd97aaa7fb85a68aeb2d1dc9f7a9e0275a0aba0 100644 |
--- a/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp |
+++ b/third_party/WebKit/Source/bindings/core/v8/V8GCController.cpp |
@@ -382,8 +382,13 @@ void V8GCController::gcEpilogue(v8::Isolate* isolate, v8::GCType type, v8::GCCal |
Heap::collectGarbage(BlinkGC::HeapPointersOnStack, BlinkGC::GCWithSweep, BlinkGC::ForcedGC); |
// Forces a precise GC at the end of the current event loop. |
- if (ThreadState::current()) |
+ if (ThreadState::current()) { |
+ // Temporary asserts to diagnose crbug.com/571207's failure to transition |
+ // to FullGCScheduled. |
+ RELEASE_ASSERT(!ThreadState::current()->isSweepingInProgress()); |
+ RELEASE_ASSERT(!ThreadState::current()->isInGC()); |
ThreadState::current()->setGCState(ThreadState::FullGCScheduled); |
+ } |
} |
TRACE_EVENT_INSTANT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "UpdateCounters", TRACE_EVENT_SCOPE_THREAD, "data", InspectorUpdateCountersEvent::data()); |