diff --git a/src/framework/stdext/shared_object.h b/src/framework/stdext/shared_object.h index 2d4197f9..c7fe8b95 100644 --- a/src/framework/stdext/shared_object.h +++ b/src/framework/stdext/shared_object.h @@ -73,7 +73,7 @@ public: } shared_object_ptr(shared_object_ptr const& rhs): px(rhs.px) { if(px != nullptr) add_ref(); } template - shared_object_ptr(shared_object_ptr const& rhs, typename std::is_convertible::type* = nullptr) : px(rhs.get()) { if(px != nullptr) add_ref(); } + shared_object_ptr(shared_object_ptr const& rhs, typename std::enable_if::value, U*>::type = nullptr) : px(rhs.get()) { if(px != nullptr) add_ref(); } ~shared_object_ptr() { if(px != nullptr) dec_ref(); } void reset() { shared_object_ptr().swap(*this); }