diff --git a/simgear/scene/tgdb/SGTexturedTriangleBin.hxx b/simgear/scene/tgdb/SGTexturedTriangleBin.hxx index 79f7459c..b2fb3cd5 100644 --- a/simgear/scene/tgdb/SGTexturedTriangleBin.hxx +++ b/simgear/scene/tgdb/SGTexturedTriangleBin.hxx @@ -28,6 +28,7 @@ #include #include #include +#include #include #include @@ -122,16 +123,16 @@ public: osg::DrawElements* getDrawElements() { if (count > 65535) { - free (_ushortElements); + _ushortElements = 0; return _uintElements; } else { - free (_uintElements); + _uintElements = 0; return _ushortElements; } } protected: - osg::DrawElementsUShort* _ushortElements; - osg::DrawElementsUInt* _uintElements; + osg::ref_ptr _ushortElements; + osg::ref_ptr _uintElements; unsigned count; };