| Index: third_party/WebKit/Source/platform/heap/ThreadState.cpp
|
| diff --git a/third_party/WebKit/Source/platform/heap/ThreadState.cpp b/third_party/WebKit/Source/platform/heap/ThreadState.cpp
|
| index 2b953d83646578b3e9c5c7f0e7d59d4642783a4a..b01a257b8c9684468353f3ac34edd2f6a15d798f 100644
|
| --- a/third_party/WebKit/Source/platform/heap/ThreadState.cpp
|
| +++ b/third_party/WebKit/Source/platform/heap/ThreadState.cpp
|
| @@ -124,7 +124,7 @@ ThreadState::ThreadState()
|
| m_likelyToBePromptlyFreed = adoptArrayPtr(new int[likelyToBePromptlyFreedArraySize]);
|
| clearHeapAges();
|
|
|
| - m_threadLocalWeakCallbackStack = new CallbackStack();
|
| + m_threadLocalWeakCallbackStack = new CallbackStack(isMainThread() ? 1024 : 128);
|
| }
|
|
|
| ThreadState::~ThreadState()
|
| @@ -484,6 +484,8 @@ void ThreadState::threadLocalWeakProcessing()
|
| // Perform thread-specific weak processing.
|
| while (popAndInvokeThreadLocalWeakCallback(&weakProcessingVisitor)) { }
|
|
|
| + ASSERT(m_threadLocalWeakCallbackStack->isEmpty());
|
| +
|
| if (isMainThread()) {
|
| double timeForThreadLocalWeakProcessing = WTF::currentTimeMS() - startTime;
|
| DEFINE_STATIC_LOCAL(CustomCountHistogram, timeForWeakHistogram, ("BlinkGC.timeForThreadLocalWeakProcessing", 1, 10 * 1000, 50));
|
|
|