Added include/osg/GLObjects + .cpp which provide osg::flush*DeletedGLObjects() methods.
Added and cleaned up DeleteHandler calls in osgViewer to help avoid crashes on exit. Changed DatabasePager across to dynamically checcking osg::getCompileContext(..) Updated wrappers.
This commit is contained in:
@@ -567,6 +567,12 @@ Win32WindowingSystem::Win32WindowingSystem()
|
||||
|
||||
Win32WindowingSystem::~Win32WindowingSystem()
|
||||
{
|
||||
if (osg::Referenced::getDeleteHandler())
|
||||
{
|
||||
osg::Referenced::getDeleteHandler()->setNumFramesToRetainObjects(0);
|
||||
osg::Referenced::getDeleteHandler()->flushAll();
|
||||
}
|
||||
|
||||
unregisterWindowClasses();
|
||||
}
|
||||
|
||||
@@ -2184,6 +2190,12 @@ struct RegisterWindowingSystemInterfaceProxy
|
||||
|
||||
~RegisterWindowingSystemInterfaceProxy()
|
||||
{
|
||||
if (osg::Referenced::getDeleteHandler())
|
||||
{
|
||||
osg::Referenced::getDeleteHandler()->setNumFramesToRetainObjects(0);
|
||||
osg::Referenced::getDeleteHandler()->flushAll();
|
||||
}
|
||||
|
||||
osg::GraphicsContext::setWindowingSystemInterface(0);
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user