summaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/com/jogamp/opengl/impl
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2010-11-21 04:08:00 +0100
committerSven Gothel <[email protected]>2010-11-21 04:08:00 +0100
commit6a3ccca96e6d4c27c372b4b9ba1e8fcee6def402 (patch)
tree4bf688a7d1a873e40bc21266bb809f844829393c /src/jogl/classes/com/jogamp/opengl/impl
parent2aa296771e3e8dd6cf027f27b0455d1803244bfe (diff)
JOGL: AWT/GraphicsConfiguration - Use own display handle, reuse causes SIGSEGV on AMD
Diffstat (limited to 'src/jogl/classes/com/jogamp/opengl/impl')
-rw-r--r--src/jogl/classes/com/jogamp/opengl/impl/x11/glx/awt/X11AWTGLXGraphicsConfigurationFactory.java11
1 files changed, 6 insertions, 5 deletions
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);