Chromium Code Reviews| Index: Source/platform/heap/Heap.cpp |
| diff --git a/Source/platform/heap/Heap.cpp b/Source/platform/heap/Heap.cpp |
| index a25225c2bec962e07edfa8b4c754650f1be0cf4e..aa76e81c63878a0c7b19d0c399a2ffd36f8ad009 100644 |
| --- a/Source/platform/heap/Heap.cpp |
| +++ b/Source/platform/heap/Heap.cpp |
| @@ -1851,6 +1851,9 @@ public: |
| MarkingVisitor() |
| : Visitor(Mode == GlobalMarking ? Visitor::GlobalMarkingVisitorType : Visitor::GenericVisitorType) |
| +#if ENABLE(ASSERT) |
| + , m_allowTraceForHashTableWeakProcessing(false) |
| +#endif |
| { |
| } |
| @@ -2023,6 +2026,20 @@ protected: |
| // does, the object should not be marked & traced. |
| return page->terminating(); |
| } |
| + |
| +#if ENABLE(ASSERT) |
| + virtual void checkIsMarkingAllowed() override |
|
haraken
2015/01/13 07:55:53
It sounds inconsistent to have check"IsMarking"All
kouhei (in TOK)
2015/01/14 02:10:05
Done.
|
| + { |
| + ASSERT(ThreadState::current()->isInGC() || m_allowTraceForHashTableWeakProcessing); |
| + } |
| + |
| + virtual void setAllowTraceForHashTableWeakProcessing(bool allow) override |
| + { |
| + m_allowTraceForHashTableWeakProcessing = true; |
|
haraken
2015/01/13 07:55:53
Shouldn't this be '= allow' ?
kouhei (in TOK)
2015/01/14 02:10:05
Done.
|
| + } |
| + |
| + bool m_allowTraceForHashTableWeakProcessing; |
| +#endif |
| }; |
| void Heap::init() |