diff --git a/include/osg/Referenced b/include/osg/Referenced index 2579379cc..ea01a07a3 100644 --- a/include/osg/Referenced +++ b/include/osg/Referenced @@ -6,7 +6,6 @@ #define OSG_REFERENCED 1 #include -#include namespace osg { @@ -32,7 +31,7 @@ class SG_EXPORT Referenced inline const int referenceCount() const { return _refCount; } protected: - virtual ~Referenced() {} + virtual ~Referenced(); mutable int _refCount; }; diff --git a/src/osg/Object.cpp b/src/osg/Object.cpp index ae9dde005..6b07e7ae3 100644 --- a/src/osg/Object.cpp +++ b/src/osg/Object.cpp @@ -1,6 +1,18 @@ #include +#include +#include using namespace osg; +Referenced::~Referenced() +{ + if (_refCount>0) + { + notify(WARN)<<"Warning: deleting still referenced object "<