Index: third_party/WebKit/Source/platform/CrossThreadCopier.h |
diff --git a/third_party/WebKit/Source/platform/CrossThreadCopier.h b/third_party/WebKit/Source/platform/CrossThreadCopier.h |
index 113eebf98da06af8223c81405d4f46f549f4ab3b..acb12a50b0f06b5f78b022e7acdc793e22e92920 100644 |
--- a/third_party/WebKit/Source/platform/CrossThreadCopier.h |
+++ b/third_party/WebKit/Source/platform/CrossThreadCopier.h |
@@ -42,6 +42,8 @@ |
#include "wtf/ThreadSafeRefCounted.h" |
#include "wtf/TypeTraits.h" |
+class SkRefCnt; |
+ |
namespace blink { |
class IntRect; |
@@ -111,7 +113,10 @@ struct CrossThreadCopier : public CrossThreadCopierBase< |
std::is_arithmetic<T>::value || std::is_enum<T>::value, |
WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, RefPtr>::Type, ThreadSafeRefCounted>::value |
|| WTF::IsSubclassOfTemplate<typename std::remove_pointer<T>::type, ThreadSafeRefCounted>::value |
- || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, PassRefPtr>::Type, ThreadSafeRefCounted>::value, |
+ || WTF::IsSubclassOfTemplate<typename WTF::RemoveTemplate<T, PassRefPtr>::Type, ThreadSafeRefCounted>::value |
+ || std::is_base_of<SkRefCnt, typename WTF::RemoveTemplate<T, RefPtr>::Type>::value |
+ || std::is_base_of<SkRefCnt, typename std::remove_pointer<T>::type>::value |
+ || std::is_base_of<SkRefCnt, typename WTF::RemoveTemplate<T, PassRefPtr>::Type>::value, |
WTF::IsSubclassOfTemplate<typename std::remove_pointer<T>::type, GarbageCollected>::value> { |
STATIC_ONLY(CrossThreadCopier); |
}; |