aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/jogamp/opengl/egl
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2015-02-03 21:18:02 +0100
committerSven Gothel <[email protected]>2015-02-03 21:18:02 +0100
commit3317e7a427fbb81dd3d7daa8116c7d33166ed003 (patch)
tree0a9d544f833ea6512588789461bd5b87a044d4da /src/jogl/classes/jogamp/opengl/egl
parentb88ae2698abe197e64c8ec8571933eaf3b7b740a (diff)
Bug 1068 - Fix issue w/ unifying Surfaceless probing (commit 2120be14c7525ef051d105f9bb02294f78d17d28)
Commit 2120be14c7525ef051d105f9bb02294f78d17d28 caused GLDrawableFactoryImpl.probeSurfacelessCtx(..) to be only called if appropriate, hence GLRendererQuirks.NoSurfacelessCtx was not set otherwise. This patch adds the required 'else' branch for the case GLDrawableFactoryImpl.probeSurfacelessCtx(..) is not called and issues GLDrawableFactoryImpl.setNoSurfacelessCtxQuirk(..). +++ Add Note to EGLDrawableFactory's shutdown: "sr.device.close() Issues eglTerminate(), which may cause SIGSEGV w/ NVIDIA 343.36 w/ TestGLProfile01NEWT" However keep this code enabled, since this seems to be a driver issue. +++
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/egl')
-rw-r--r--src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java b/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java
index 9c91bc788..8e2535309 100644
--- a/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java
+++ b/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java
@@ -745,6 +745,8 @@ public class EGLDrawableFactory extends GLDrawableFactoryImpl {
if( probeSurfacelessCtx(context, false /* restoreDrawable */) ) {
zeroDrawable = context.getGLDrawable();
}
+ } else {
+ setNoSurfacelessCtxQuirk(context);
}
rendererQuirks[0] = context.getRendererQuirks();
ctxProfile[0] = context.getContextOptions();
@@ -814,7 +816,8 @@ public class EGLDrawableFactory extends GLDrawableFactoryImpl {
}
if (null != sr.device) {
- // may cause JVM SIGSEGV:
+ // Issues eglTerminate(), which may cause SIGSEGV w/ NVIDIA 343.36 w/ TestGLProfile01NEWT
+ // May cause JVM SIGSEGV:
sr.device.close();
sr.device = null;
}