Hi, I've been experiencing various problems involving osg::DeleteHandler.
When I modify the osgviewer program by replacing osgViewer::Viewer viewer(arguments); with osg::ref_ptr<osgViewer::Viewer> viewerp(new osgViewer::Viewer(arguments)); osgViewer::Viewer& viewer = *viewerp; and quit the application, sometimes it hangs, and sometimes it displays Error: glBufferData not supported by the OpenGL driver In any case, I'm pretty sure that's not true for me, since I have OpenGL 2.1drivers. I think the problem doesn't occur when I pass in --SingleThreaded. In one of my projects, where I'm trying to embed a python interpreter (using boost::python and the Python C API), I also found that when I call an exposed function through python that creates a node and puts it in a global ref_ptr, I get a segfault upon quitting the application somewhere in DeleteHandler::doDelete(). I believe this happens regardless of the threading model. I don't claim much familiarity with boost::python or the Python C API, but I don't think I'm doing anything wrong involving Python's reference counting or threads, since I can produce the problem in a minimal program that does what I'm describing. Incidentally, when I run valgrind osgviewer cow.osg, I get the following error: Conditional jump or move depends on uninitialised value(s) at 0x4AEBB4C: osg::DeleteHandler::flush() (stl_list.h:135) by 0x530D58D: osgViewer::Viewer::advance(double) (Viewer.cpp:1823) by 0x5313F30: osgViewer::Viewer::frame(double) (Viewer.cpp:1783) by 0x5314085: osgViewer::Viewer::run() (Viewer.cpp:767) by 0x4039EF: main (osgViewer.cpp:146) I've been running all of this on a linux x86_64 machine, osg-2.0 compiled with the ReleaseWithDebugInfo switch, using g++-3.4.5. Has anyone else experienced these kinds of problems? Thanks, Anye Li
_______________________________________________ Osg-Users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

