I have my JOGL application running as a GLCanvas inside a JFrame. I have a WindowListener set on the JFrame. When the user tries to close the application, winowClosing() gets called. From this method I then:
- Stop my Animator
- Call setVisible(false) on the JFrame
- Call dispose() on the JFrame
Works fine on Win32, but on Linux Fedora Core 3, I sometimes see a SEGV during the dispose(). The relevant stack trace is:
C [libGL.so.1+0x38376]
j net.java.games.jogl.impl.x11.GLX.glXDestroyContext(JJ)V+0
j net.java.games.jogl.impl.x11.X11GLContext.destroyImpl()V+17
j net.java.games.jogl.impl.GLContext.destroy()V+33
j net.java.games.jogl.GLCanvas.removeNotify()V+4
j java.awt.Container.removeNotify()V+38
j javax.swing.JComponent.removeNotify()V+1
j java.awt.Container.removeNotify()V+38
j javax.swing.JComponent.removeNotify()V+1
j java.awt.Container.removeNotify()V+38
j javax.swing.JComponent.removeNotify()V+1
j javax.swing.JRootPane.removeNotify()V+5
j java.awt.Container.removeNotify()V+38
j java.awt.Frame.removeNotify()V+51
j java.awt.Window$1DisposeAction.run()V+105
j java.awt.Window.doDispose()V+16
j java.awt.Window.dispose()V+1
j rob.kit2.Start.windowClosing(Ljava/awt/event/WindowEvent;)V+19
Any ideas anyone ? I’m using JOGL 1.1b07 and NVidia drivers about a week old. If I omit the ‘setVisible(false)’ the problem still occurs.
Full log here:
http://un.abraded.co.uk/jogl/hs_err_pid4479.log
[EDIT] Updated above URL
Thanks
Rob