Index: Source/platform/heap/Handle.h |
diff --git a/Source/platform/heap/Handle.h b/Source/platform/heap/Handle.h |
index c82affe9146735bb4770919152ddea7933866073..e3692ceaedb05194662ca2e4682292617a4ab142 100644 |
--- a/Source/platform/heap/Handle.h |
+++ b/Source/platform/heap/Handle.h |
@@ -772,6 +772,7 @@ template<typename T, typename U> inline bool operator!=(const PassRefPtr<T>& a, |
#define RefCountedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCollected |
#define ThreadSafeRefCountedWillBeGarbageCollected WebCore::GarbageCollected |
#define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinalized |
+#define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WebCore::ThreadSafeRefCountedGarbageCollected |
#define TreeSharedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCollected |
#define PersistentWillBeMember WebCore::Member |
#define RefPtrWillBePersistent WebCore::Persistent |
@@ -825,6 +826,13 @@ template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCo |
return PassRefPtrWillBeRawPtr<T>(adoptRefCountedGarbageCollected(ptr)); |
} |
+template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeThreadSafeRefCountedGarbageCollected(T* ptr) |
+{ |
+ static const bool isThreadSafeRefCountedGarbageCollected = WTF::IsSubclassOfTemplate<T, ThreadSafeRefCountedGarbageCollected>::value; |
+ COMPILE_ASSERT(isThreadSafeRefCountedGarbageCollected, useAdoptRefWillBeNoop); |
+ return PassRefPtrWillBeRawPtr<T>(adoptRefCountedGarbageCollected(ptr)); |
+} |
+ |
template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) |
{ |
static const bool notRefCountedGarbageCollected = !WTF::IsSubclassOfTemplate<T, RefCountedGarbageCollected>::value; |
@@ -857,6 +865,7 @@ public: |
#define RefCountedWillBeRefCountedGarbageCollected WTF::RefCounted |
#define ThreadSafeRefCountedWillBeGarbageCollected WTF::ThreadSafeRefCounted |
#define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WTF::ThreadSafeRefCounted |
+#define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WTF::ThreadSafeRefCounted |
#define TreeSharedWillBeRefCountedGarbageCollected WebCore::TreeShared |
#define PersistentWillBeMember WebCore::Persistent |
#define RefPtrWillBePersistent WTF::RefPtr |
@@ -896,6 +905,7 @@ public: |
template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeNoop(T* ptr) { return adoptRef(ptr); } |
template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeRefCountedGarbageCollected(T* ptr) { return adoptRef(ptr); } |
+template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeThreadSafeRefCountedGarbageCollected(T* ptr) { return adoptRef(ptr); } |
template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) { return adoptPtr(ptr); } |
#define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED WTF_MAKE_FAST_ALLOCATED |