| Index: Source/platform/heap/Handle.h
|
| diff --git a/Source/platform/heap/Handle.h b/Source/platform/heap/Handle.h
|
| index 6a46cef73a1b9bbf1ee303b986977ceb9d7d81f2..2d272b857c2ca78768a32c773a0590f76426efc4 100644
|
| --- a/Source/platform/heap/Handle.h
|
| +++ b/Source/platform/heap/Handle.h
|
| @@ -1040,6 +1040,12 @@ template<typename T> struct HashTraits<WebCore::WeakMember<T> > : SimpleClassHas
|
|
|
| static PeekOutType peek(const WebCore::WeakMember<T>& value) { return value; }
|
| static PassOutType passOut(const WebCore::WeakMember<T>& value) { return value; }
|
| + static bool shouldRemoveFromCollection(WebCore::Visitor* visitor, WebCore::WeakMember<T>& value) { return !visitor->isAlive(value); }
|
| + static void traceInCollection(WebCore::Visitor* visitor, WebCore::WeakMember<T>& weakMember, WebCore::ShouldWeakPointersBeMarkedStrongly strongify)
|
| + {
|
| + if (strongify == WebCore::WeakPointersActStrong)
|
| + visitor->trace(reinterpret_cast<WebCore::Member<T>&>(weakMember)); // Strongified visit.
|
| + }
|
| };
|
|
|
| template<typename T> struct PtrHash<WebCore::Member<T> > : PtrHash<T*> {
|
|
|