Skip to content
The Jenkins Controller is preparing for shutdown. No new builds can be started.
Unstable

Changes

Summary

  1. Windows: Bump JVM to 6u29 (details)
  2. More Robust GLProfile Initialization ; Add NativeWindowFactory Shutdown (details)
  3. JOGLNewtApplet1Run: Issue GLProfile.shutdown() to adapt to the 'new' (details)
  4. Move manual GDI utils to GDIUtil ; Minor cleanup. (details)
  5. GLDrawableFactory: Implementations lifecycle is handled via (details)
  6. GLProfile: use dbl checked locking w/ volatile ; Proper shutdown (details)
  7. Complete commit 2c0a0981f7e1376064abd981c79c65c9d1b57410 ; Missed native (details)
  8. X11Util / GDISurface Robustness (details)
  9. Minor edits. (details)
  10. Adapt to GlueGen commit 7e6cf46ed2e0e9772f79e06437596056efa8c682: (details)
  11. Fix Bug 522: NEWT requestFocus() causes a crash if !isNativeValid() (details)
  12. Fix 96205926731aeb61a862c87974f611d814937c54 GDIUtil native code. (details)
  13. GLContext fix shutdown(): Clear proc address tables and extension cache (details)
  14. New GLProfile.ShutdownType: SHARED_ONLY / COMPLETE - Enhance/Fix (details)
Commit b72ac8efaca45241a44dd631acb20a8c23ea2a7b by Sven Gothel
Windows: Bump JVM to 6u29
The file was modifiedmake/scripts/make.jogl.all.win32.bat (diff)
The file was modifiedmake/scripts/java-win32-dbg.bat (diff)
The file was modifiedmake/scripts/java-win64-dbg.bat (diff)
The file was modifiedmake/scripts/java-win32.bat (diff)
The file was modifiedmake/scripts/make.jogl.all.win64.bat (diff)
The file was modifiedmake/scripts/java-win64.bat (diff)
The file was modifiedmake/scripts/tests-javaws-x64.bat (diff)
Commit ad0ba11b0a1d6cb4a113e467420f2f797f1d26cb by Sven Gothel
More Robust GLProfile Initialization ; Add NativeWindowFactory Shutdown

More Robust GLProfile Initialization
- Catch GLException in GLDrawableFactory getWasSharedContextCreated(device) impl.,
   which may fail (See comment on Firefox/Chorme EGL deployed library for Windows).

- If getWasSharedContextCreated(devide) fails, set respective factory availability to false,
   ie. hasDesktopGLFactory, hasEGLFactory, ..

Add NativeWindowFactory Shutdown
  - Currenly a dummy entry, may evolve. X11Util shutdown is issued by respective GLDrawableFactory
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLProfile.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLGraphicsConfigurationFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/awt/WindowsAWTWGLGraphicsConfigurationFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff)
The file was modifiedsrc/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff)
Commit 77e9d16a3ad5131a2197bb3cad2309827c3a796a by Sven Gothel
JOGLNewtApplet1Run: Issue GLProfile.shutdown() to adapt to the 'new' plugin lifecycle.

Applet 'restart' (init.start.stop.destroy .. init.start...)
didn't work on Windows browsers (Firefox, Safari, Chrome, ..) w/ JVM 6u26..6u29.

It seems that after destroy we loose the ClassLoader already (plugin2)
hence we need to bind to the native resources again.
Solution is to map the JOGL lifecycle of GLProfile [initSingleton()..shutdown()]
to the Applet's [init..destroy].
The file was modifiedsrc/newt/classes/com/jogamp/newt/awt/applet/JOGLNewtApplet1Run.java (diff)
Commit 2c0a0981f7e1376064abd981c79c65c9d1b57410 by Sven Gothel
Move manual GDI utils to GDIUtil ; Minor cleanup.

RegisteredClassFactory: Reference the factories itself instead of the RegisteredClass.
                        This enables the shutdown hook to clear the factories state,
                        which is required for proper recreation.
The file was modifiedmake/config/nativewindow/win32-lib.cfg (diff)
The file was modifiedmake/stub_includes/win32/wingdi.h (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/windows/WindowsWindow.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/WindowsDummyWGLDrawable.java (diff)
The file was modifiedmake/config/nativewindow/win32-CustomJavaCode.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/windows/RegisteredClassFactory.java (diff)
The file was addedsrc/nativewindow/classes/jogamp/nativewindow/windows/GDIUtil.java (diff)
The file was modifiedmake/build-nativewindow.xml (diff)
The file was modifiedsrc/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/windows/WindowsJAWTWindow.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/windows/WindowsScreen.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff)
Commit 53ba4a2b3639a3746218693ea588159e5c6d07c7 by Sven Gothel
GLDrawableFactory: Implementations lifecycle is handled via constructor/destroy()
The file was modifiedsrc/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff)
Commit 1113d44644469eaae69fd11fe7108ab432e4cf38 by Sven Gothel
GLProfile: use dbl checked locking w/ volatile ; Proper shutdown sequence.
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLProfile.java (diff)
Commit 96205926731aeb61a862c87974f611d814937c54 by Sven Gothel
Complete commit 2c0a0981f7e1376064abd981c79c65c9d1b57410 ; Missed native impl.
The file was modifiedsrc/nativewindow/native/windows/GDImisc.c (diff)
Commit c61ff4098477adf1661c063291ffa3cf81af1d5b by Sven Gothel
X11Util / GDISurface Robustness

X11Util:
  - shutdown: keep list of displays, if not really closed.
  - Init default display name in initSingleton.

GDISurface: Check ReleaseDC and throw exception if fails
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/windows/GDISurface.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/x11/X11Util.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/JAWTJNILibLoader.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/DesktopGLDynamicLookupHelper.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/egl/EGLES1DynamicLibraryBundleInfo.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/JAWTUtil.java (diff)
Commit 6e7bc19af948bd3a53c5da2dacfafe6f8484d268 by Sven Gothel
Adapt to GlueGen commit 7e6cf46ed2e0e9772f79e06437596056efa8c682: JNILibLoaderBase addNativeJarLibs(..)
The file was modifiedsrc/newt/classes/jogamp/newt/NEWTJNILibLoader.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/NWJNILibLoader.java (diff)
Commit 035051a686b7652dd14c0a878ebe1fe29f5f11c3 by Sven Gothel
Fix Bug 522: NEWT requestFocus() causes a crash if !isNativeValid()
The file was modifiedsrc/newt/classes/jogamp/newt/WindowImpl.java (diff)
Commit 7bbe18e689d62650fbbe94eec841369b3f58aaa6 by Sven Gothel
Fix 96205926731aeb61a862c87974f611d814937c54 GDIUtil native code.
The file was modifiedsrc/nativewindow/native/windows/GDImisc.c (diff)
Commit 919aabb77250cb0e272dac228388592d08bf98f5 by Sven Gothel
GLContext fix shutdown(): Clear proc address tables and extension cache (GLContextImpl)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLContext.java (diff)
Commit b6aa455d21fbcfc256ae8f8f4d66493c17e23f4c by Sven Gothel
New GLProfile.ShutdownType: SHARED_ONLY / COMPLETE - Enhance/Fix Lifecycle Management

- Leave Platform, .. TempJarCache untouched.

- GLDrawableFactoryImpl*: Leave DynamicLibraryBundle(lib-binding) untouched,
  for NativeLibrary, JNILibLoaderBase (JNI libs), .. consistency.

- SHARED_ONLY: shutdown shared GLDrawableFactoryImpl* resources and NativeWindowFactory

- COMPLETE: additionally shutdown GLContext*
            Clear all cached GL/GLX proc-address and device/context mappings.

- Use new "GLProfile.shutdown(GLProfile.ShutdownType.SHARED_ONLY)" in Applets

- X11GLXDrawableFactory Shutdown: Uncomment close/destroy of shared resources.

- JAWTWindow.destroy(): Close the delegated device.
  In case it's X11 this closes the exclusive opened X11 Display.
The file was addedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestShutdownCompleteAWT.java (diff)
The file was modifiedsrc/newt/classes/com/jogamp/newt/awt/applet/JOGLNewtApplet1Run.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLProfile.java (diff)
The file was modifiedsrc/nativewindow/classes/javax/media/nativewindow/x11/X11GraphicsDevice.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/awt/VersionApplet.java (diff)
The file was modifiedsrc/nativewindow/classes/javax/media/nativewindow/DefaultGraphicsDevice.java (diff)
The file was modifiedsrc/nativewindow/classes/javax/media/nativewindow/AbstractGraphicsDevice.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestShutdownSharedAWT.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestShutdownCompleteNEWT.java (diff)
The file was addeddoc/Implementation/Lifecycle.txt (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLProfile01NEWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestShutdownSharedNEWT.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/glsl/TestTransformFeedbackVaryingsBug407NEWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/glsl/TestGLSLSimple01NEWT.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/TestCloseNewtAWT.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/TestScreenMode01NEWT.java (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/JAWTWindow.java (diff)