Index: Source/core/inspector/AsyncCallStackTracker.cpp |
diff --git a/Source/core/inspector/AsyncCallStackTracker.cpp b/Source/core/inspector/AsyncCallStackTracker.cpp |
index ae2910bcd51e4dd63669f7958473f65372ea89cb..f899e041ec14d62c1432c7bfbab0c78c3a105b8c 100644 |
--- a/Source/core/inspector/AsyncCallStackTracker.cpp |
+++ b/Source/core/inspector/AsyncCallStackTracker.cpp |
@@ -60,8 +60,9 @@ namespace blink { |
template <class K> |
class AsyncCallStackTracker::AsyncCallChainMap final { |
+ ALLOW_ONLY_INLINE_ALLOCATION(); |
public: |
- typedef HashMap<K, RefPtr<AsyncCallStackTracker::AsyncCallChain> > MapType; |
+ using MapType = WillBeHeapHashMap<K, RefPtrWillBeMember<AsyncCallStackTracker::AsyncCallChain>>; |
explicit AsyncCallChainMap(AsyncCallStackTracker* tracker) : m_tracker(tracker) { } |
~AsyncCallChainMap() |
@@ -97,11 +98,16 @@ public: |
void remove(typename MapType::KeyPeekInType key) |
{ |
- RefPtr<AsyncCallStackTracker::AsyncCallChain> chain = m_asyncCallChains.take(key); |
+ RefPtrWillBeRawPtr<AsyncCallStackTracker::AsyncCallChain> chain = m_asyncCallChains.take(key); |
if (chain && m_tracker->m_listener) |
m_tracker->m_listener->didRemoveAsyncCallChain(chain.get()); |
} |
+ void trace(Visitor* visitor) |
+ { |
+ visitor->trace(m_asyncCallChains); |
+ } |
+ |
private: |
AsyncCallStackTracker* m_tracker; |
MapType m_asyncCallChains; |