| Index: Source/platform/heap/Handle.h
|
| diff --git a/Source/platform/heap/Handle.h b/Source/platform/heap/Handle.h
|
| index 2653f6393a88fcc34d435b14b7a442cbe7ea6853..32117cc3ac41cb9c431aad8878b0b478299f5b49 100644
|
| --- a/Source/platform/heap/Handle.h
|
| +++ b/Source/platform/heap/Handle.h
|
| @@ -783,6 +783,7 @@ template<typename T, typename U> inline bool operator!=(const PassRefPtr<T>& a,
|
| #define RefCountedWillBeGarbageCollected WebCore::GarbageCollected
|
| #define RefCountedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinalized
|
| #define RefCountedWillBeRefCountedGarbageCollected WebCore::RefCountedGarbageCollected
|
| +#define RefCountedGarbageCollectedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinalized
|
| #define ThreadSafeRefCountedWillBeGarbageCollected WebCore::GarbageCollected
|
| #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WebCore::GarbageCollectedFinalized
|
| #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WebCore::ThreadSafeRefCountedGarbageCollected
|
| @@ -867,6 +868,15 @@ template<typename T> T* adoptPtrWillBeRefCountedGarbageCollected(T* ptr)
|
| return adoptRefCountedGarbageCollected(ptr);
|
| }
|
|
|
| +template<typename T> T* adoptRefCountedGarbageCollectedWillBeNoop(T* ptr)
|
| +{
|
| + static const bool notRefCountedGarbageCollected = !WTF::IsSubclassOfTemplate<typename WTF::RemoveConst<T>::Type, RefCountedGarbageCollected>::value;
|
| + static const bool notRefCounted = !WTF::IsSubclassOfTemplate<typename WTF::RemoveConst<T>::Type, RefCounted>::value;
|
| + COMPILE_ASSERT(notRefCountedGarbageCollected, useAdoptRefCountedWillBeRefCountedGarbageCollected);
|
| + COMPILE_ASSERT(notRefCounted, youMustAdopt);
|
| + return ptr;
|
| +}
|
| +
|
| #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED // do nothing when oilpan is enabled.
|
| #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing
|
| #define DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(type) // do nothing
|
| @@ -888,6 +898,7 @@ public:
|
| #define RefCountedWillBeGarbageCollected WTF::RefCounted
|
| #define RefCountedWillBeGarbageCollectedFinalized WTF::RefCounted
|
| #define RefCountedWillBeRefCountedGarbageCollected WTF::RefCounted
|
| +#define RefCountedGarbageCollectedWillBeGarbageCollectedFinalized WebCore::RefCountedGarbageCollected
|
| #define ThreadSafeRefCountedWillBeGarbageCollected WTF::ThreadSafeRefCounted
|
| #define ThreadSafeRefCountedWillBeGarbageCollectedFinalized WTF::ThreadSafeRefCounted
|
| #define ThreadSafeRefCountedWillBeThreadSafeRefCountedGarbageCollected WTF::ThreadSafeRefCounted
|
| @@ -939,6 +950,14 @@ template<typename T> PassRefPtrWillBeRawPtr<T> adoptRefWillBeThreadSafeRefCounte
|
| template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeNoop(T* ptr) { return adoptPtr(ptr); }
|
| template<typename T> PassOwnPtrWillBeRawPtr<T> adoptPtrWillBeRefCountedGarbageCollected(T* ptr) { return adoptPtr(ptr); }
|
|
|
| +template<typename T> T* adoptRefCountedGarbageCollectedWillBeNoop(T* ptr)
|
| +{
|
| + static const bool isRefCountedGarbageCollected = WTF::IsSubclassOfTemplate<typename WTF::RemoveConst<T>::Type, RefCountedGarbageCollected>::value;
|
| + COMPILE_ASSERT(isRefCountedGarbageCollected, useAdoptRefWillBeNoop);
|
| + return adoptRefCountedGarbageCollected(ptr);
|
| +}
|
| +
|
| +
|
| #define WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED WTF_MAKE_FAST_ALLOCATED
|
| #define DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(type) \
|
| public: \
|
|
|