diff options
author | Sven Gothel <[email protected]> | 2009-07-01 07:32:38 +0000 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2009-07-01 07:32:38 +0000 |
commit | 49846bce691962e926b81f9ec86336487f64505b (patch) | |
tree | 8e0c08b782a058ba481bb53b9c7a13b4f1e4a8cc /src/nativewindow/classes/javax/media | |
parent | 214e94847ac097e25fb82429e599357b090ba83e (diff) |
- Fixed: JOGL Cg Dependencies ..
- Cg classes reside in jogl.cg.jar
- Restrict native Cg library dependency only to the jogl cg library,
which is loaded from the CgGL class only.
- Tested Cg demos with and w/o Cg installation,
tested regular GL demos with and w/o Cg installation.
(Linux & MacOSX)
- jogl/etc/profile.jogl
- Changed invocation: $0 <JOGL-PROFILE> [jogl-build-dir]
- Autodetects if used from within a autobuild directory
- Added it to the autobuild zip file
- Fixed: NativeWindow X11GraphicsScreen, adding missing Toolkit locks
- Set RI to true !
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@2009 232f8b59-042b-4e1e-8c03-345bb8c30851
Diffstat (limited to 'src/nativewindow/classes/javax/media')
-rw-r--r-- | src/nativewindow/classes/javax/media/nativewindow/x11/X11GraphicsScreen.java | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/src/nativewindow/classes/javax/media/nativewindow/x11/X11GraphicsScreen.java b/src/nativewindow/classes/javax/media/nativewindow/x11/X11GraphicsScreen.java index 34bc48f99..45146d33e 100644 --- a/src/nativewindow/classes/javax/media/nativewindow/x11/X11GraphicsScreen.java +++ b/src/nativewindow/classes/javax/media/nativewindow/x11/X11GraphicsScreen.java @@ -56,9 +56,14 @@ public class X11GraphicsScreen extends DefaultGraphicsScreen implements Cloneabl /** Creates a new X11GraphicsScreen using a thread local display connection */ public static AbstractGraphicsScreen createDefault() { - long display = X11Util.getThreadLocalDefaultDisplay(); - int scrnIdx = X11Lib.DefaultScreen(display); - return createScreenDevice(display, scrnIdx); + NativeWindowFactory.getDefaultFactory().getToolkitLock().lock(); + try { + long display = X11Util.getThreadLocalDefaultDisplay(); + int scrnIdx = X11Lib.DefaultScreen(display); + return createScreenDevice(display, scrnIdx); + } finally { + NativeWindowFactory.getDefaultFactory().getToolkitLock().unlock(); + } } public long getDefaultVisualID() { @@ -74,8 +79,14 @@ public class X11GraphicsScreen extends DefaultGraphicsScreen implements Cloneabl } private static int fetchScreen(X11GraphicsDevice device, int screen) { - if(!X11Lib.XineramaEnabled(device.getHandle())) { - return screen; + // It still could be an AWT hold handle .. + NativeWindowFactory.getDefaultFactory().getToolkitLock().lock(); + try { + if(!X11Lib.XineramaEnabled(device.getHandle())) { + return screen; + } + } finally { + NativeWindowFactory.getDefaultFactory().getToolkitLock().unlock(); } return 0; } |