Hi Stefan, On 2/9/07, Robert Osfield <[EMAIL PROTECTED]> wrote:
It would be easist to just code one display connection per graphics window, this would have an overhead of course, but only if you multiple windows per screen.
This morning this is what I implemented. GraphicsWindowX11 now has two connections to the Xserver, one for the graphics thread, one for the main thread that does the event polling. The only little suprise along the way was the WM_DELETE_WINDOW atom being used wouldn't work when I was attaching it to the second display connection, well it would work, but the event polling would never get the event. I tried various combinations but eventually had to give up and put the check for the WM_DELETE_WINDOW event into the swapBuffersImplementation. I have of course removed the XInitThreads() and so far everything seems to be hanging together pretty well. Tests like osgcamera cow.osg -2 that required the XInitThreads before now don't need it, and opening and closing various OSG apps works ok, both on a single screen and across two screens. I do a stress test where I run apps for 10 frames then close them, and repeat this test 100 times via a simple shell script. Could you do a cvs update and test to see if this problem is now resolved. Cheers, Robert. _______________________________________________ osg-users mailing list [email protected] http://openscenegraph.net/mailman/listinfo/osg-users http://www.openscenegraph.org/
