diff --git a/src/osg/Uniform.cpp b/src/osg/Uniform.cpp index 71ebc1d6a..a2452118c 100644 --- a/src/osg/Uniform.cpp +++ b/src/osg/Uniform.cpp @@ -59,11 +59,15 @@ void Uniform::addParent(osg::StateSet* object) { OSG_DEBUG_FP<<"Uniform Adding parent"< lock(getRefMutex()); + _parents.push_back(object); } void Uniform::removeParent(osg::StateSet* object) { + OpenThreads::ScopedPointerLock lock(getRefMutex()); + ParentList::iterator pitr = std::find(_parents.begin(),_parents.end(),object); if (pitr!=_parents.end()) _parents.erase(pitr); }