diff --git a/src/osg/Referenced.cpp b/src/osg/Referenced.cpp index 7e59d6046..520759027 100644 --- a/src/osg/Referenced.cpp +++ b/src/osg/Referenced.cpp @@ -282,7 +282,11 @@ ObserverSet* Referenced::getOrCreateObserverSet() const } else { - if (!_observerSet) _observerSet = new ObserverSet(this); + if (!_observerSet) + { + _observerSet = new ObserverSet(this); + static_cast(_observerSet)->ref(); + } return static_cast(_observerSet); } #endif