| Index: Source/platform/CrossThreadCopier.h
|
| diff --git a/Source/platform/CrossThreadCopier.h b/Source/platform/CrossThreadCopier.h
|
| index a1f593e34c48edfa5132b28b7c595b0961e68641..866da405783f57f536381bdc1d240b81186a0208 100644
|
| --- a/Source/platform/CrossThreadCopier.h
|
| +++ b/Source/platform/CrossThreadCopier.h
|
| @@ -41,6 +41,7 @@
|
| #include "wtf/RefPtr.h"
|
| #include "wtf/ThreadSafeRefCounted.h"
|
| #include "wtf/TypeTraits.h"
|
| +#include "wtf/UnretainedPtr.h"
|
|
|
| namespace blink {
|
|
|
| @@ -152,6 +153,14 @@ namespace blink {
|
| }
|
| };
|
|
|
| + template<typename T> struct CrossThreadCopierBase<false, false, true, UnretainedPtr<T> > {
|
| + typedef RawPtr<T> Type;
|
| + static Type copy(const Type& ptr)
|
| + {
|
| + return ptr;
|
| + }
|
| + };
|
| +
|
| template<typename T> struct CrossThreadCopierBase<false, false, true, Member<T> > {
|
| typedef RawPtr<T> Type;
|
| static Type copy(const Member<T>& ptr)
|
| @@ -174,6 +183,7 @@ namespace blink {
|
| || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, PassRefPtr>::Type, ThreadSafeRefCounted>::value,
|
| WTF::IsSubclassOfTemplate<typename WTF::RemovePointer<T>::Type, GarbageCollected>::value
|
| || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, RawPtr>::Type, GarbageCollected>::value
|
| + || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, UnretainedPtr>::Type, GarbageCollected>::value
|
| || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, Member>::Type, GarbageCollected>::value
|
| || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, WeakMember>::Type, GarbageCollected>::value,
|
| T> {
|
|
|