From 4f27bcecf7484dc041551f52a5c49e2884cb3867 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Thu, 28 Jun 2012 21:46:10 +0200 Subject: AWT/SWT GLCanvas: Remove volatile of context instance, use drawable instance's volatile 'feature' --- src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/jogl/classes/com/jogamp/opengl/swt') diff --git a/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java b/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java index 7e1b69823..920e63421 100644 --- a/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java +++ b/src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java @@ -109,7 +109,7 @@ public class GLCanvas extends Canvas implements GLAutoDrawable { /* GL Stuff */ private final GLDrawableHelper drawableHelper = new GLDrawableHelper(); private volatile GLDrawable drawable; // volatile avoids locking all accessors. FIXME still need to sync destroy/display - private volatile GLContext context; // volatile avoids locking all accessors. FIXME still need to sync destroy/display + private GLContext context; /* Native window surface */ private AbstractGraphicsDevice device; @@ -454,7 +454,7 @@ public class GLCanvas extends Canvas implements GLAutoDrawable { @Override public void dispose() { - if (null != context) { + if (null != drawable && null != context) { // drawable is volatile! boolean animatorPaused = false; final GLAnimatorControl animator = getAnimator(); if (null != animator) { -- cgit v1.2.3