From 6a3ccca96e6d4c27c372b4b9ba1e8fcee6def402 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Sun, 21 Nov 2010 04:08:00 +0100 Subject: JOGL: AWT/GraphicsConfiguration - Use own display handle, reuse causes SIGSEGV on AMD --- .../x11/glx/awt/X11AWTGLXGraphicsConfigurationFactory.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'src/jogl/classes/com/jogamp') diff --git a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/awt/X11AWTGLXGraphicsConfigurationFactory.java b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/awt/X11AWTGLXGraphicsConfigurationFactory.java index cf5b1a650..0fbe7a1c9 100644 --- a/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/awt/X11AWTGLXGraphicsConfigurationFactory.java +++ b/src/jogl/classes/com/jogamp/opengl/impl/x11/glx/awt/X11AWTGLXGraphicsConfigurationFactory.java @@ -98,12 +98,13 @@ public class X11AWTGLXGraphicsConfigurationFactory extends GraphicsConfiguration System.err.println("X11AWTGLXGraphicsConfigurationFactory: using AWT X11 display 0x"+Long.toHexString(displayHandle)); } /** - * May cause an exception at X11 Display destruction, - * so reuse AWT's display for now, which seems to work nicely. - String name = X11Util.XDisplayString(displayHandle); - displayHandle = X11Util.createDisplay(name); - owner = true; + * May cause an exception on NVidia X11 Display destruction, + * when destruction happen immediately after construction, around 10ms. + * However, the own Display handle is required for AMD gpus. */ + String name = X11Util.XDisplayString(displayHandle); + displayHandle = X11Util.createDisplay(name); + owner = true; } ((AWTGraphicsDevice)awtScreen.getDevice()).setSubType(NativeWindowFactory.TYPE_X11, displayHandle); X11GraphicsDevice x11Device = new X11GraphicsDevice(displayHandle, AbstractGraphicsDevice.DEFAULT_UNIT); -- cgit v1.2.3