aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/classes/jogamp/opengl
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2012-01-09 13:49:53 +0100
committerSven Gothel <[email protected]>2012-01-09 13:49:53 +0100
commite702a9401d4564c970ddda71116d14d7661dd048 (patch)
treedc901fe07510a33b693ce57fb51e4993908d91ed /src/jogl/classes/jogamp/opengl
parent29d4e29537de0d9043fcb1363e707e4f6c16f6f3 (diff)
Fix bug 548 and bug 533 - OSX [10.6] NVidia driver may require glFinish() before ctx release.
Diffstat (limited to 'src/jogl/classes/jogamp/opengl')
-rw-r--r--src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java b/src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java
index 77da2650f..0dd1a460e 100644
--- a/src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java
+++ b/src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java
@@ -532,6 +532,7 @@ public abstract class MacOSXCGLContext extends GLContextImpl
}
public boolean release(long ctx) {
+ gl.glFinish(); // w/o glFinish() OSX < 10.7 (NVidia driver) may freeze
final boolean res = CGL.clearCurrentContext(ctx);
final long cglCtx = CGL.getCGLContext(ctx);
if(0 == cglCtx) {
@@ -635,6 +636,7 @@ public abstract class MacOSXCGLContext extends GLContextImpl
}
public boolean release(long ctx) {
+ gl.glFinish(); // w/o glFinish() OSX < 10.7 (NVidia driver) may freeze
int err = CGL.CGLSetCurrentContext(0);
if(DEBUG && CGL.kCGLNoError != err) {
System.err.println("CGL: Could not release current context: err 0x"+Integer.toHexString(err)+": "+this);