diff --git a/indra/llcommon/llpointer.h b/indra/llcommon/llpointer.h index 3273a85af1f0de467253d779596108520951eddc..c83e55577debb78b1505cf373a0f4cf9d7ae2753 100644 --- a/indra/llcommon/llpointer.h +++ b/indra/llcommon/llpointer.h @@ -170,7 +170,8 @@ class LLCopyOnWritePointer : public LLPointer<Type> { public: typedef LLCopyOnWritePointer<Type> self_t; - + typedef LLPointer<Type> pointer_t; + LLCopyOnWritePointer() {} @@ -185,14 +186,14 @@ class LLCopyOnWritePointer : public LLPointer<Type> Type* write() { makeUnique(); - return mPointer; + return pointer_t::mPointer; } void makeUnique() { - if (LLPointer<Type>::notNull() && mPointer->getNumRefs() > 1) + if (pointer_t::notNull() && pointer_t::mPointer->getNumRefs() > 1) { - *(LLPointer<Type>*)(this) = new Type(*mPointer); + *(pointer_t*)(this) = new Type(*pointer_t::mPointer); } } };