diff options
Diffstat (limited to 'src')
4 files changed, 8 insertions, 3 deletions
diff --git a/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java b/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java index 91f79793c..4ab465a8c 100644 --- a/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java +++ b/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java @@ -239,7 +239,8 @@ public class GLCanvas extends Canvas implements GLAutoDrawable { drawable.setRealized(true); context = drawable.createContext(shareWith); - + context.setSynchronized(true); + /* Register SWT listeners (e.g. PaintListener) to render/resize GL surface. */ /* TODO: verify that these do not need to be manually de-registered when destroying the SWT component */ addPaintListener(new PaintListener() { diff --git a/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java b/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java index bee2b28f9..53043c3cc 100644 --- a/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java +++ b/src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java @@ -151,7 +151,10 @@ public class EGLDrawableFactory extends GLDrawableFactoryImpl { if(DEBUG) { System.err.println("EGLDrawableFactory.destroy("+shutdownType+"): "+sr.device.toString()); } - EGLDisplayUtil.eglTerminate(sr.device.getHandle()); + final long eglDisplay = sr.device.getHandle(); + if(EGL.EGL_NO_DISPLAY != eglDisplay) { + EGLDisplayUtil.eglTerminate(eglDisplay); + } } sharedMap.clear(); sharedMap = null; diff --git a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java index 156e479fd..419ce7f7f 100644 --- a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java +++ b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java @@ -421,6 +421,7 @@ public class GLWindow implements GLAutoDrawable, Window, NEWTEventConsumer, FPSC } drawable.setRealized(true); context = drawable.createContext(sharedContext); + context.setSynchronized(true); context.setContextCreationFlags(additionalCtxCreationFlags); } if(Window.DEBUG_IMPLEMENTATION) { diff --git a/src/test/com/jogamp/opengl/test/junit/jogl/acore/TestPBufferDeadlockAWT.java b/src/test/com/jogamp/opengl/test/junit/jogl/acore/TestPBufferDeadlockAWT.java index 7ef606c2e..3a25d1206 100644 --- a/src/test/com/jogamp/opengl/test/junit/jogl/acore/TestPBufferDeadlockAWT.java +++ b/src/test/com/jogamp/opengl/test/junit/jogl/acore/TestPBufferDeadlockAWT.java @@ -58,7 +58,7 @@ public class TestPBufferDeadlockAWT extends UITestCase { } protected void runTestGL( GLCapabilities caps ) throws InterruptedException, InvocationTargetException { - final GLPbuffer pbuffer = GLDrawableFactory.getFactory( GLProfile.get( "GL2" ) ).createGLPbuffer( + final GLPbuffer pbuffer = GLDrawableFactory.getFactory( GLProfile.getGL2ES2() ).createGLPbuffer( null, caps, new DefaultGLCapabilitiesChooser(), 512, 512, |