summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2020-02-21 19:23:52 +0100
committerSven Gothel <[email protected]>2020-02-21 19:23:52 +0100
commitff780fc11602fb79a7ce1dcf879fdaeb865b9fa8 (patch)
tree564828be0d590538cdd3434505f14aa88233f0aa
parentf4f92cdc0eb89c62070a865601527097e6d5cc72 (diff)
Bug 1398: Refine test case: Make classpath and libpath runtime configurable + show JOGL version
-rw-r--r--src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.c73
-rw-r--r--src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.java7
-rw-r--r--src/test-native/bug1398/RedSquareES2.java6
-rwxr-xr-xsrc/test-native/bug1398/make-bug1398.sh25
-rw-r--r--src/test-native/bug1398/run-bug1398.sh26
-rw-r--r--src/test-native/bug1398/test1398-jogamp232-01.log66
-rw-r--r--src/test-native/bug1398/test1398-jogamp232_java08-01.log88
-rw-r--r--src/test-native/bug1398/test1398-jogamp232_java11-01.log93
-rw-r--r--src/test-native/bug1398/test1398-jogamp240rc-01.log59
-rw-r--r--src/test-native/bug1398/test1398-jogamp240rc_java08-01.log86
10 files changed, 352 insertions, 177 deletions
diff --git a/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.c b/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.c
index 8fe51f97e..8491887c7 100644
--- a/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.c
+++ b/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.c
@@ -1,3 +1,4 @@
+#include <string.h>
#include <Cocoa/Cocoa.h>
#include <JavaVM/jni.h>
#include <dlfcn.h>
@@ -7,6 +8,14 @@
#define TRACE(fmt, ...) \
do { if (DEBUG_TRACE) fprintf(err, "%s:%d:%s(): " fmt "\n", __FILE__, __LINE__, __func__, __VA_ARGS__); fflush(err); } while (0)
+static const char * classpath_arg_prelim = "-Djava.class.path=";
+static const char * libpath_arg_prelim = "-Djava.library.path=";
+static const char * arg_closing = "";
+
+static char * classpath_arg = NULL;
+static char * libpath_arg = NULL;
+static char * jvm_libjli_path = NULL;
+
// JNI_CreateJavaVM
typedef jint (JNICALL CREATEVM)(JavaVM **pvm, void **env, void *args);
@@ -22,27 +31,20 @@ JavaVM *jvm = NULL;
static const char *JNI_CREATEJAVAVM = "JNI_CreateJavaVM";
void *jvm_lib = NULL;
-void *create_vm(const char *jvm_lib_path)
+void *create_vm(void)
{
void *sym = NULL;
- jvm_lib = dlopen(jvm_lib_path, RTLD_LAZY | RTLD_GLOBAL);
+ jvm_lib = dlopen(jvm_libjli_path, RTLD_LAZY | RTLD_GLOBAL);
if (jvm_lib) {
- TRACE("Found libjli.dylib%s", "");
+ TRACE("Found libjli.dylib %s", jvm_libjli_path);
sym = dlsym(jvm_lib, JNI_CREATEJAVAVM);
} else {
- TRACE("Unable to find libjli.dylib%s", "");
+ TRACE("Unable to find libjli.dylib %s", jvm_libjli_path);
}
return sym;
}
-#ifndef CLASSPATH
-#define CLASSPATH ".:/Users/jogamp/projects/JogAmp/gluegen/build/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/jogl/build/jar/jogl-all.jar"
-#endif
-#ifndef LIBPATH
-#define LIBPATH "/Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib"
-#endif
-
-static void *launchJava(void *ptr)
+static void *launchJava(void *unused)
{
int k = 0;
@@ -59,8 +61,8 @@ static void *launchJava(void *ptr)
TRACE("launchJava.1.1%s", "");
vm_args.nOptions = 7;
JavaVMOption options[vm_args.nOptions];
- options[0].optionString = "-Djava.class.path="CLASSPATH;
- options[1].optionString = "-Djava.library.path="LIBPATH;
+ options[0].optionString = classpath_arg;
+ options[1].optionString = libpath_arg;
options[2].optionString = "-DNjogamp.debug=all";
options[3].optionString = "-DNjogamp.debug.NativeLibrary=true";
options[4].optionString = "-DNjogamp.debug.JNILibLoader=true";
@@ -72,11 +74,11 @@ static void *launchJava(void *ptr)
vm_args.ignoreUnrecognized = JNI_TRUE;
TRACE("launchJava.1.2%s", "");
- TRACE(".. using CLASSPATH %s", CLASSPATH);
- TRACE(".. using LIBPATH %s", LIBPATH);
+ TRACE(".. using CLASSPATH %s", classpath_arg);
+ TRACE(".. using LIBPATH %s", libpath_arg);
/* Create the Java VM */
- CREATEVM *CreateVM = create_vm((char *)ptr);
+ CREATEVM *CreateVM = create_vm();
TRACE("CreateVM:%lx env:%lx vm_args:%lx", (long unsigned int)CreateVM, (long unsigned int)&env, (long unsigned int)&vm_args);
res = CreateVM(&jvm, (void**)&env, &vm_args);
if (res < 0) {
@@ -165,7 +167,7 @@ void die(JNIEnv *env)
exit(0);
}
-void create_jvm_thread(const char *jvm_lib_path)
+void create_jvm_thread(void)
{
pthread_t vmthread;
@@ -189,7 +191,7 @@ void create_jvm_thread(const char *jvm_lib_path)
}
TRACE("create_jvm_thread.1.2%s", "");
- pthread_create(&vmthread, &thread_attr, launchJava, (void *)jvm_lib_path);
+ pthread_create(&vmthread, &thread_attr, launchJava, NULL);
pthread_attr_destroy(&thread_attr);
TRACE("create_jvm_thread.1.X%s", "");
}
@@ -238,11 +240,36 @@ int NSApplicationMain(int argc, const char *argv[]) {
err = stderr;
+ const int arg_closing_len = strlen(arg_closing);
+
for (int k = 1; k < argc; k++) {
- TRACE("argv[%d]:%s", k, argv[k]);
+ if( !strcmp("-classpath", argv[k]) && k+1 < argc ) {
+ const int classpath_arg_prelim_len = strlen(classpath_arg_prelim);
+ const int classpath_len = strlen(argv[++k]);
+ classpath_arg = calloc(classpath_len + classpath_arg_prelim_len + arg_closing_len + 1, 1);
+ strncpy(classpath_arg, classpath_arg_prelim, classpath_arg_prelim_len+1);
+ strncpy(classpath_arg+classpath_arg_prelim_len, argv[k], classpath_len+1);
+ strncpy(classpath_arg+classpath_arg_prelim_len+classpath_len, arg_closing, arg_closing_len+1);
+ TRACE("argv[%d]: classpath arg %s", k, classpath_arg);
+ } else if( !strcmp("-libpath", argv[k]) && k+1 < argc ) {
+ const int libpath_arg_prelim_len = strlen(libpath_arg_prelim);
+ const int libpath_len = strlen(argv[++k]);
+ libpath_arg = calloc(libpath_len + libpath_arg_prelim_len + arg_closing_len + 1, 1);
+ strncpy(libpath_arg, libpath_arg_prelim, libpath_arg_prelim_len+1);
+ strncpy(libpath_arg+libpath_arg_prelim_len, argv[k], libpath_len+1);
+ strncpy(libpath_arg+libpath_arg_prelim_len+libpath_len, arg_closing, arg_closing_len+1);
+ TRACE("argv[%d]: libpath arg %s", k, libpath_arg);
+ } else if( !strcmp("-jvmlibjli", argv[k]) && k+1 < argc ) {
+ const int len = strlen(argv[++k]);
+ jvm_libjli_path = calloc(len + 1, 1);
+ strncpy(jvm_libjli_path, argv[k], len+1);
+ TRACE("argv[%d]: jvmlibjli %s", k, jvm_libjli_path);
+ } else {
+ TRACE("argv[%d]:%s", k, argv[k]);
+ }
}
- if (argc < 2) {
- TRACE("Usage: Bug1398macOSContextOpsOnMainThread %s", "[libjli.dylib path]");
+ if ( NULL == classpath_arg || NULL == libpath_arg || NULL == jvm_libjli_path ) {
+ TRACE("Usage: Bug1398macOSContextOpsOnMainThread -classpath CLASSPATH -libpath LIBPATH -jvmlibjli libjli.dylib%s", "");
exit(1);
}
TRACE("main.1%s", "");
@@ -257,7 +284,7 @@ int NSApplicationMain(int argc, const char *argv[]) {
[NSApp setDelegate:_appDelegate];
TRACE("main.1.5%s", "");
- create_jvm_thread(argv[1]);
+ create_jvm_thread();
TRACE("main.1.6%s", "");
[NSApp run];
diff --git a/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.java b/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.java
index 65b3d3f59..b887e7428 100644
--- a/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.java
+++ b/src/test-native/bug1398/Bug1398macOSContextOpsOnMainThread.java
@@ -85,6 +85,13 @@ public class Bug1398macOSContextOpsOnMainThread extends JFrame implements GLEven
}
});
animator.start();
+
+ try {
+ Thread.sleep(1000);
+ } catch (Exception e) {}
+
+ animator.stop();
+ System.exit(0);
}
/**
diff --git a/src/test-native/bug1398/RedSquareES2.java b/src/test-native/bug1398/RedSquareES2.java
index 86de51701..d65de45b2 100644
--- a/src/test-native/bug1398/RedSquareES2.java
+++ b/src/test-native/bug1398/RedSquareES2.java
@@ -27,6 +27,7 @@
*/
// package com.jogamp.opengl.demos.es2;
+import com.jogamp.common.util.VersionUtil;
import com.jogamp.opengl.JoglVersion;
import com.jogamp.opengl.util.GLArrayDataServer;
import com.jogamp.opengl.util.PMVMatrix;
@@ -93,12 +94,13 @@ public class RedSquareES2 implements GLEventListener, TileRendererBase.TileRende
@Override
public void init(final GLAutoDrawable glad) {
if(verbose) {
- System.err.println(Thread.currentThread()+" RedSquareES2.init: tileRendererInUse "+tileRendererInUse);
+ System.err.println(Thread.currentThread()+" RedSquareES2.init: tileRendererInUse "+tileRendererInUse+" on "+Thread.currentThread());
+ System.err.println(VersionUtil.getPlatformInfo());
+ System.err.println(JoglVersion.getInstance());
}
final GL2ES2 gl = glad.getGL().getGL2ES2();
if(verbose) {
- System.err.println("RedSquareES2 init on "+Thread.currentThread());
System.err.println("Chosen GLCapabilities: " + glad.getChosenGLCapabilities());
System.err.println("INIT GL IS: " + gl.getClass().getName());
System.err.println(JoglVersion.getGLStrings(gl, null, false).toString());
diff --git a/src/test-native/bug1398/make-bug1398.sh b/src/test-native/bug1398/make-bug1398.sh
index d410f7066..7ec9935d9 100755
--- a/src/test-native/bug1398/make-bug1398.sh
+++ b/src/test-native/bug1398/make-bug1398.sh
@@ -2,25 +2,18 @@
set -x
-USE_232=1
+JOGAMP_VERSION=v2.3.2
+#JOGAMP_VERSION=v2.2.4
+
+CLASSPATH=".:/Users/jogamp/projects/JogAmp/builds/$JOGAMP_VERSION/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/$JOGAMP_VERSION/jogamp-all-platforms/jar/jogl-all.jar"
+
ok=0
-if [ $USE_232 -eq 0 ] ; then
- xcrun clang -x objective-c -framework Cocoa \
- -DCLASSPATH="\".:/Users/jogamp/projects/JogAmp/gluegen/build/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/jogl/build/jar/jogl-all.jar\"" \
- -DLIBPATH="\"/Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib\"" \
- -o Bug1398macOSContextOpsOnMainThread Bug1398macOSContextOpsOnMainThread.c \
- && ok=1
-else
- xcrun clang -x objective-c -framework Cocoa \
- -DCLASSPATH="\".:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/jogl-all.jar\"" \
- -DLIBPATH="\"/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/lib/macosx-universal\"" \
- -o Bug1398macOSContextOpsOnMainThread Bug1398macOSContextOpsOnMainThread.c \
- && ok=1
-fi
+xcrun clang -x objective-c -framework Cocoa \
+ -o Bug1398macOSContextOpsOnMainThread Bug1398macOSContextOpsOnMainThread.c \
+ && ok=1
if [ $ok -eq 1 ] ; then
- javac -source 1.8 -target 1.8 -classpath ../../../../gluegen/build/gluegen-rt.jar:../../../build/jar/jogl-all.jar RedSquareES2.java Bug1398macOSContextOpsOnMainThread.java
+ javac -source 1.8 -target 1.8 -classpath $CLASSPATH RedSquareES2.java Bug1398macOSContextOpsOnMainThread.java
fi
-# ./Bug1398macOSContextOpsOnMainThread /Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib/lib
diff --git a/src/test-native/bug1398/run-bug1398.sh b/src/test-native/bug1398/run-bug1398.sh
index b4252bbdd..a014d13d2 100644
--- a/src/test-native/bug1398/run-bug1398.sh
+++ b/src/test-native/bug1398/run-bug1398.sh
@@ -1,16 +1,20 @@
#! /bin/bash
-# export LD_LIBRARY_PATH=/Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib
-# export DYLD_LIBRARY_PATH=$LD_LIBRARY_PATH
+JVM_JLI_LIB=/Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
+# JVM_JLI_LIB=/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/MacOS/libjli.dylib
-#rm -rf natives
-#mkdir -p natives/macosx-universal
-#cp -av /Users/jogamp/projects/JogAmp/gluegen/build/obj/libgluegen_rt.so natives/macosx-universal/
-#cp -av natives/macosx-universal/libgluegen_rt.so natives/macosx-universal/libgluegen_rt.dylib
-#cp -av /Users/jogamp/projects/JogAmp/jogl/build/lib/*dylib natives/macosx-universal/
+JOGAMP_VERSION=v2.3.2
+#JOGAMP_VERSION=v2.2.4
-# ./Bug1398macOSContextOpsOnMainThread /Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib/lib
-# ./Bug1398macOSContextOpsOnMainThread /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/jre/lib/server/libjvm.dylib
+if [ -z "$JOGAMP_VERSION" ] ; then
+ ./Bug1398macOSContextOpsOnMainThread -jvmlibjli $JVM_JLI_LIB \
+ -classpath ".:/Users/jogamp/projects/JogAmp/gluegen/build/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/jogl/build/jar/jogl-all.jar" \
+ -libpath "/Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib"
+else
+
+ ./Bug1398macOSContextOpsOnMainThread -jvmlibjli $JVM_JLI_LIB \
+ -classpath ".:/Users/jogamp/projects/JogAmp/builds/$JOGAMP_VERSION/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/jogl-all.jar" \
+ -libpath "/Users/jogamp/projects/JogAmp/builds/$JOGAMP_VERSION/jogamp-all-platforms/lib/macosx-universal"
+
+fi
-./Bug1398macOSContextOpsOnMainThread /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
-# ./Bug1398macOSContextOpsOnMainThread /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/MacOS/libjli.dylib
diff --git a/src/test-native/bug1398/test1398-jogamp232-01.log b/src/test-native/bug1398/test1398-jogamp232-01.log
deleted file mode 100644
index bfc11684a..000000000
--- a/src/test-native/bug1398/test1398-jogamp232-01.log
+++ /dev/null
@@ -1,66 +0,0 @@
-+ ./Bug1398macOSContextOpsOnMainThread /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
-Bug1398macOSContextOpsOnMainThread.c:242:NSApplicationMain(): argv[1]:/Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
-Bug1398macOSContextOpsOnMainThread.c:248:NSApplicationMain(): main.1
-Bug1398macOSContextOpsOnMainThread.c:251:NSApplicationMain(): main.1.1
-2020-02-19 21:36:02.797 Bug1398macOSContextOpsOnMainThread[1710:65756] init
-Bug1398macOSContextOpsOnMainThread.c:253:NSApplicationMain(): main.1.2
-Bug1398macOSContextOpsOnMainThread.c:255:NSApplicationMain(): main.1.3
-Bug1398macOSContextOpsOnMainThread.c:258:NSApplicationMain(): main.1.5
-Bug1398macOSContextOpsOnMainThread.c:182:create_jvm_thread(): create_jvm_thread.1.1
-Bug1398macOSContextOpsOnMainThread.c:190:create_jvm_thread(): create_jvm_thread.1.2
-Bug1398macOSContextOpsOnMainThread.c:194:create_jvm_thread(): create_jvm_thread.1.X
-Bug1398macOSContextOpsOnMainThread.c:261:NSApplicationMain(): main.1.6
-Bug1398macOSContextOpsOnMainThread.c:59:launchJava(): launchJava.1.1
-Bug1398macOSContextOpsOnMainThread.c:74:launchJava(): launchJava.1.2
-Bug1398macOSContextOpsOnMainThread.c:75:launchJava(): .. using CLASSPATH .:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/jogl-all.jar
-Bug1398macOSContextOpsOnMainThread.c:76:launchJava(): .. using LIBPATH /Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/lib/macosx-universal
-Bug1398macOSContextOpsOnMainThread.c:30:create_vm(): Found libjli.dylib
-Bug1398macOSContextOpsOnMainThread.c:80:launchJava(): CreateVM:104c47b80 env:70000bb98da8 vm_args:70000bb98d68
-2020-02-19 21:36:02.934 Bug1398macOSContextOpsOnMainThread[1710:65756] App starting...
-Bug1398macOSContextOpsOnMainThread.c:86:launchJava(): VM Created
-Bug1398macOSContextOpsOnMainThread.c:89:launchJava(): launchJava.1.3
-2020-02-19 21:36:04.091 Bug1398macOSContextOpsOnMainThread[1710:65801] WARNING: NSWindow drag regions should only be invalidated on the Main Thread! This will throw an exception in the future. Called from (
- 0 AppKit 0x00007fff2c051575 -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 371
- 1 AppKit 0x00007fff2c038ed5 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1416
- 2 AppKit 0x00007fff2c038947 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42
- 3 libnativewindow_macosx.jnilib 0x00000001099203fe Java_jogamp_nativewindow_macosx_OSXUtil_CreateNSWindow0 + 398
- 4 ??? 0x000000010ae94667 0x0 + 4478027367
-)
-Bug1398macOSContextOpsOnMainThread.c:96:launchJava(): launchJava.1.4
-Bug1398macOSContextOpsOnMainThread.c:101:launchJava(): launchJava.1.5
-Java version: 1.8 (1.8.0_192)
-classloader:sun.misc.Launcher$AppClassLoader@764c12b6
-OS: Mac OS X 10.15.2 x86_64
-w:1920 h:1080 rr:60 bits:32 dim.w:800 dim.h:600
-gc.bounds: java.awt.Rectangle[x=0,y=0,width=1920,height=1080]
-dim: java.awt.Dimension[width=1920,height=1080]
-Bug1398macOSContextOpsOnMainThread.c:103:launchJava(): Just passed NewObject()...
-Bug1398macOSContextOpsOnMainThread.c:122:launchJava(): launchJava.1.X
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.init: tileRendererInUse null
-RedSquareES2 init on Thread[AWT-EventQueue-0,6,main]
-Chosen GLCapabilities: GLCaps[rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2.hw], offscr[fbo]]
-INIT GL IS: jogamp.opengl.gl4.GL4bcImpl
-Swap Interval 0
-GL Profile GLProfile[GL2/GL2.hw]
-GL Version 2.1 (Compat profile, arb, compat[], FBO, hardware) - 2.1 INTEL-14.3.9 [GL 2.1.0, vendor 14.3.9 (INTEL-14.3.9)]
-Quirks [NoOffscreenBitmap, GL4NeedsGL3Request, NeedSharedObjectSync]
-Impl. class jogamp.opengl.gl4.GL4bcImpl
-GL_VENDOR Intel Inc.
-GL_RENDERER Intel Iris OpenGL Engine
-GL_VERSION 2.1 INTEL-14.3.9
-GLSL true, has-compiler-func: true, version: 1.20 / 1.20.0
-GL FBO: basic true, full true
-GL_EXTENSIONS 128
-GLX_EXTENSIONS 0
------------------------------------------------------------------------------------------------------
-ShaderState: attachShaderProgram: -1 -> 1 (enable: true)
- null
- ShaderProgram[id=1, linked=false, inUse=false, program: 1,
- ShaderCode[id=1, type=VERTEX_SHADER, valid=true, shader: 2, source]
- ShaderCode[id=2, type=FRAGMENT_SHADER, valid=true, shader: 3, source]]
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.init FIN
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape 0/0 800x600 of 800x600, swapInterval 1, drawable 0x7f9d55d94400, tileRendererInUse null
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape FIN
-2020-02-19 21:36:05.940 Bug1398macOSContextOpsOnMainThread[1710:65756] startUpCompletionOperation main thread? ANS - YES
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.dispose: tileRendererInUse null
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.dispose FIN
diff --git a/src/test-native/bug1398/test1398-jogamp232_java08-01.log b/src/test-native/bug1398/test1398-jogamp232_java08-01.log
new file mode 100644
index 000000000..2c1e108a2
--- /dev/null
+++ b/src/test-native/bug1398/test1398-jogamp232_java08-01.log
@@ -0,0 +1,88 @@
+Bug1398macOSContextOpsOnMainThread.c:266:NSApplicationMain(): argv[2]: jvmlibjli /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
+Bug1398macOSContextOpsOnMainThread.c:253:NSApplicationMain(): argv[4]: classpath arg -Djava.class.path=.:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/jogl-all.jar
+Bug1398macOSContextOpsOnMainThread.c:261:NSApplicationMain(): argv[6]: libpath arg -Djava.library.path=/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/lib/macosx-universal
+Bug1398macOSContextOpsOnMainThread.c:275:NSApplicationMain(): main.1
+Bug1398macOSContextOpsOnMainThread.c:278:NSApplicationMain(): main.1.1
+2020-02-21 19:13:41.768 Bug1398macOSContextOpsOnMainThread[1045:20769] init
+Bug1398macOSContextOpsOnMainThread.c:280:NSApplicationMain(): main.1.2
+Bug1398macOSContextOpsOnMainThread.c:282:NSApplicationMain(): main.1.3
+Bug1398macOSContextOpsOnMainThread.c:285:NSApplicationMain(): main.1.5
+Bug1398macOSContextOpsOnMainThread.c:184:create_jvm_thread(): create_jvm_thread.1.1
+Bug1398macOSContextOpsOnMainThread.c:192:create_jvm_thread(): create_jvm_thread.1.2
+Bug1398macOSContextOpsOnMainThread.c:196:create_jvm_thread(): create_jvm_thread.1.X
+Bug1398macOSContextOpsOnMainThread.c:288:NSApplicationMain(): main.1.6
+Bug1398macOSContextOpsOnMainThread.c:61:launchJava(): launchJava.1.1
+Bug1398macOSContextOpsOnMainThread.c:76:launchJava(): launchJava.1.2
+Bug1398macOSContextOpsOnMainThread.c:77:launchJava(): .. using CLASSPATH -Djava.class.path=.:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/jogl-all.jar
+Bug1398macOSContextOpsOnMainThread.c:78:launchJava(): .. using LIBPATH -Djava.library.path=/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/lib/macosx-universal
+Bug1398macOSContextOpsOnMainThread.c:39:create_vm(): Found libjli.dylib /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
+Bug1398macOSContextOpsOnMainThread.c:82:launchJava(): CreateVM:10884fb80 env:700006d99da8 vm_args:700006d99d68
+2020-02-21 19:13:41.829 Bug1398macOSContextOpsOnMainThread[1045:20769] App starting...
+Bug1398macOSContextOpsOnMainThread.c:88:launchJava(): VM Created
+Bug1398macOSContextOpsOnMainThread.c:91:launchJava(): launchJava.1.3
+2020-02-21 19:13:42.870 Bug1398macOSContextOpsOnMainThread[1045:20790] WARNING: NSWindow drag regions should only be invalidated on the Main Thread! This will throw an exception in the future. Called from (
+ 0 AppKit 0x00007fff2a3e0575 -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 371
+ 1 AppKit 0x00007fff2a3c7ed5 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1416
+ 2 AppKit 0x00007fff2a3c7947 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42
+ 3 libnativewindow_macosx.jnilib 0x00000001229f53fe Java_jogamp_nativewindow_macosx_OSXUtil_CreateNSWindow0 + 398
+ 4 ??? 0x000000010ca4e667 0x0 + 4507100775
+)
+Bug1398macOSContextOpsOnMainThread.c:98:launchJava(): launchJava.1.4
+Bug1398macOSContextOpsOnMainThread.c:103:launchJava(): launchJava.1.5
+Java version: 1.8 (1.8.0_192)
+classloader:sun.misc.Launcher$AppClassLoader@764c12b6
+OS: Mac OS X 10.15.2 x86_64
+w:1920 h:1080 rr:60 bits:32 dim.w:800 dim.h:600
+gc.bounds: java.awt.Rectangle[x=0,y=0,width=1920,height=1080]
+dim: java.awt.Dimension[width=1920,height=1080]
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.init: tileRendererInUse null on Thread[AWT-EventQueue-0,6,main]
+-----------------------------------------------------------------------------------------------------
+Platform: MACOS / Mac OS X 10.15.2 (10.15.2), x86_64 (X86_64, GENERIC_ABI), 4 cores, littleEndian true
+MachineDataInfo: runtimeValidated true, 32Bit false, primitive size / alignment:
+ int8 1 / 1, int16 2 / 2
+ int 4 / 4, long 8 / 8
+ int32 4 / 4, int64 8 / 8
+ float 4 / 4, double 8 / 8, ldouble 16 / 16
+ pointer 8 / 8, page 4096
+Platform: Java Version: 1.8.0_192 (1.8.0u192), VM: Java HotSpot(TM) 64-Bit Server VM, Runtime: Java(TM) SE Runtime Environment
+Platform: Java Vendor: Oracle Corporation, http://java.oracle.com/, JavaSE: true, Java6: true, AWT enabled: true
+-----------------------------------------------------------------------------------------------------
+-----------------------------------------------------------------------------------------------------
+Package: com.jogamp.opengl
+Extension Name: com.jogamp.opengl
+Specification Title: Java Bindings for OpenGL API Specification
+Specification Vendor: JogAmp Community
+Specification Version: 2.3
+Implementation Title: Java Bindings for OpenGL Runtime Environment
+Implementation Vendor: JogAmp Community
+Implementation Vendor ID: com.jogamp
+Implementation URL: http://jogamp.org/
+Implementation Version: 2.3.2
+Implementation Build: 2.3-b1469-20151010
+Implementation Branch: origin/master
+Implementation Commit: e794fc40ba723f2fca4ac892e873975fb393e007
+-----------------------------------------------------------------------------------------------------
+Chosen GLCapabilities: GLCaps[rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2.hw], offscr[fbo]]
+INIT GL IS: jogamp.opengl.gl4.GL4bcImpl
+Swap Interval 0
+GL Profile GLProfile[GL2/GL2.hw]
+GL Version 2.1 (Compat profile, arb, compat[], FBO, hardware) - 2.1 INTEL-14.3.9 [GL 2.1.0, vendor 14.3.9 (INTEL-14.3.9)]
+Quirks [NoOffscreenBitmap, GL4NeedsGL3Request, NeedSharedObjectSync]
+Impl. class jogamp.opengl.gl4.GL4bcImpl
+GL_VENDOR Intel Inc.
+GL_RENDERER Intel Iris OpenGL Engine
+GL_VERSION 2.1 INTEL-14.3.9
+GLSL true, has-compiler-func: true, version: 1.20 / 1.20.0
+GL FBO: basic true, full true
+GL_EXTENSIONS 128
+GLX_EXTENSIONS 0
+-----------------------------------------------------------------------------------------------------
+ShaderState: attachShaderProgram: -1 -> 1 (enable: true)
+ null
+ ShaderProgram[id=1, linked=false, inUse=false, program: 1,
+ ShaderCode[id=1, type=VERTEX_SHADER, valid=true, shader: 2, source]
+ ShaderCode[id=2, type=FRAGMENT_SHADER, valid=true, shader: 3, source]]
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.init FIN
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape 0/0 800x600 of 800x600, swapInterval 1, drawable 0x7fe933379570, tileRendererInUse null
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape FIN
+2020-02-21 19:13:44.831 Bug1398macOSContextOpsOnMainThread[1045:20769] startUpCompletionOperation main thread? ANS - YES
diff --git a/src/test-native/bug1398/test1398-jogamp232_java11-01.log b/src/test-native/bug1398/test1398-jogamp232_java11-01.log
new file mode 100644
index 000000000..fd7144364
--- /dev/null
+++ b/src/test-native/bug1398/test1398-jogamp232_java11-01.log
@@ -0,0 +1,93 @@
+Bug1398macOSContextOpsOnMainThread.c:266:NSApplicationMain(): argv[2]: jvmlibjli /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/MacOS/libjli.dylib
+Bug1398macOSContextOpsOnMainThread.c:253:NSApplicationMain(): argv[4]: classpath arg -Djava.class.path=.:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/jogl-all.jar
+Bug1398macOSContextOpsOnMainThread.c:261:NSApplicationMain(): argv[6]: libpath arg -Djava.library.path=/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/lib/macosx-universal
+Bug1398macOSContextOpsOnMainThread.c:275:NSApplicationMain(): main.1
+Bug1398macOSContextOpsOnMainThread.c:278:NSApplicationMain(): main.1.1
+2020-02-21 19:11:55.398 Bug1398macOSContextOpsOnMainThread[1030:20387] init
+Bug1398macOSContextOpsOnMainThread.c:280:NSApplicationMain(): main.1.2
+Bug1398macOSContextOpsOnMainThread.c:282:NSApplicationMain(): main.1.3
+Bug1398macOSContextOpsOnMainThread.c:285:NSApplicationMain(): main.1.5
+Bug1398macOSContextOpsOnMainThread.c:184:create_jvm_thread(): create_jvm_thread.1.1
+Bug1398macOSContextOpsOnMainThread.c:192:create_jvm_thread(): create_jvm_thread.1.2
+Bug1398macOSContextOpsOnMainThread.c:196:create_jvm_thread(): create_jvm_thread.1.X
+Bug1398macOSContextOpsOnMainThread.c:288:NSApplicationMain(): main.1.6
+Bug1398macOSContextOpsOnMainThread.c:61:launchJava(): launchJava.1.1
+Bug1398macOSContextOpsOnMainThread.c:76:launchJava(): launchJava.1.2
+Bug1398macOSContextOpsOnMainThread.c:77:launchJava(): .. using CLASSPATH -Djava.class.path=.:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/jogl-all.jar
+Bug1398macOSContextOpsOnMainThread.c:78:launchJava(): .. using LIBPATH -Djava.library.path=/Users/jogamp/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/lib/macosx-universal
+Bug1398macOSContextOpsOnMainThread.c:39:create_vm(): Found libjli.dylib /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/MacOS/libjli.dylib
+Bug1398macOSContextOpsOnMainThread.c:82:launchJava(): CreateVM:108243151 env:70000f0dcda8 vm_args:70000f0dcd68
+2020-02-21 19:11:55.459 Bug1398macOSContextOpsOnMainThread[1030:20387] App starting...
+Bug1398macOSContextOpsOnMainThread.c:88:launchJava(): VM Created
+Bug1398macOSContextOpsOnMainThread.c:91:launchJava(): launchJava.1.3
+WARNING: An illegal reflective access operation has occurred
+WARNING: Illegal reflective access by com.jogamp.common.os.NativeLibrary$3 (file:/usr/local/projects/JogAmp/builds/v2.3.2/jogamp-all-platforms/jar/gluegen-rt.jar) to method java.lang.ClassLoader.findLibrary(java.lang.String)
+WARNING: Please consider reporting this to the maintainers of com.jogamp.common.os.NativeLibrary$3
+WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
+WARNING: All illegal access operations will be denied in a future release
+2020-02-21 19:11:56.559 Bug1398macOSContextOpsOnMainThread[1030:20412] WARNING: NSWindow drag regions should only be invalidated on the Main Thread! This will throw an exception in the future. Called from (
+ 0 AppKit 0x00007fff2a3e0575 -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 371
+ 1 AppKit 0x00007fff2a3c7ed5 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1416
+ 2 AppKit 0x00007fff2a3c7947 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42
+ 3 libnativewindow_macosx.jnilib 0x000000010d2fa3fe Java_jogamp_nativewindow_macosx_OSXUtil_CreateNSWindow0 + 398
+ 4 ??? 0x0000000115b23950 0x0 + 4658968912
+)
+Bug1398macOSContextOpsOnMainThread.c:98:launchJava(): launchJava.1.4
+Bug1398macOSContextOpsOnMainThread.c:103:launchJava(): launchJava.1.5
+Java version: null (null)
+classloader:jdk.internal.loader.ClassLoaders$AppClassLoader@799f7e29
+OS: Mac OS X 10.15.2 x86_64
+w:1920 h:1080 rr:60 bits:32 dim.w:800 dim.h:600
+gc.bounds: java.awt.Rectangle[x=0,y=0,width=1920,height=1080]
+dim: java.awt.Dimension[width=1920,height=1080]
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.init: tileRendererInUse null on Thread[AWT-EventQueue-0,6,main]
+-----------------------------------------------------------------------------------------------------
+Platform: MACOS / Mac OS X 10.15.2 (10.15.2), x86_64 (X86_64, GENERIC_ABI), 4 cores, littleEndian true
+MachineDataInfo: runtimeValidated true, 32Bit false, primitive size / alignment:
+ int8 1 / 1, int16 2 / 2
+ int 4 / 4, long 8 / 8
+ int32 4 / 4, int64 8 / 8
+ float 4 / 4, double 8 / 8, ldouble 16 / 16
+ pointer 8 / 8, page 4096
+Platform: Java Version: 11.0.3 (11.0.3u0), VM: OpenJDK 64-Bit Server VM, Runtime: OpenJDK Runtime Environment
+Platform: Java Vendor: AdoptOpenJDK, https://adoptopenjdk.net/, JavaSE: true, Java6: true, AWT enabled: true
+-----------------------------------------------------------------------------------------------------
+-----------------------------------------------------------------------------------------------------
+Package: com.jogamp.opengl
+Extension Name: com.jogamp.opengl
+Specification Title: Java Bindings for OpenGL API Specification
+Specification Vendor: JogAmp Community
+Specification Version: 2.3
+Implementation Title: Java Bindings for OpenGL Runtime Environment
+Implementation Vendor: JogAmp Community
+Implementation Vendor ID: com.jogamp
+Implementation URL: http://jogamp.org/
+Implementation Version: 2.3.2
+Implementation Build: 2.3-b1469-20151010
+Implementation Branch: origin/master
+Implementation Commit: e794fc40ba723f2fca4ac892e873975fb393e007
+-----------------------------------------------------------------------------------------------------
+Chosen GLCapabilities: GLCaps[rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2.hw], offscr[fbo]]
+INIT GL IS: jogamp.opengl.gl4.GL4bcImpl
+Swap Interval 0
+GL Profile GLProfile[GL2/GL2.hw]
+GL Version 2.1 (Compat profile, arb, compat[], FBO, hardware) - 2.1 INTEL-14.3.9 [GL 2.1.0, vendor 14.3.9 (INTEL-14.3.9)]
+Quirks [NoOffscreenBitmap, GL4NeedsGL3Request, NeedSharedObjectSync]
+Impl. class jogamp.opengl.gl4.GL4bcImpl
+GL_VENDOR Intel Inc.
+GL_RENDERER Intel Iris OpenGL Engine
+GL_VERSION 2.1 INTEL-14.3.9
+GLSL true, has-compiler-func: true, version: 1.20 / 1.20.0
+GL FBO: basic true, full true
+GL_EXTENSIONS 128
+GLX_EXTENSIONS 0
+-----------------------------------------------------------------------------------------------------
+ShaderState: attachShaderProgram: -1 -> 1 (enable: true)
+ null
+ ShaderProgram[id=1, linked=false, inUse=false, program: 1,
+ ShaderCode[id=1, type=VERTEX_SHADER, valid=true, shader: 2, source]
+ ShaderCode[id=2, type=FRAGMENT_SHADER, valid=true, shader: 3, source]]
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.init FIN
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape 0/0 800x600 of 800x600, swapInterval 1, drawable 0x7f8deb4bf3d0, tileRendererInUse null
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape FIN
+2020-02-21 19:11:58.466 Bug1398macOSContextOpsOnMainThread[1030:20387] startUpCompletionOperation main thread? ANS - YES
diff --git a/src/test-native/bug1398/test1398-jogamp240rc-01.log b/src/test-native/bug1398/test1398-jogamp240rc-01.log
deleted file mode 100644
index e2c1d310b..000000000
--- a/src/test-native/bug1398/test1398-jogamp240rc-01.log
+++ /dev/null
@@ -1,59 +0,0 @@
-+ ./Bug1398macOSContextOpsOnMainThread /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
-Bug1398macOSContextOpsOnMainThread.c:242:NSApplicationMain(): argv[1]:/Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
-Bug1398macOSContextOpsOnMainThread.c:248:NSApplicationMain(): main.1
-Bug1398macOSContextOpsOnMainThread.c:251:NSApplicationMain(): main.1.1
-2020-02-19 21:35:33.383 Bug1398macOSContextOpsOnMainThread[1697:65492] init
-Bug1398macOSContextOpsOnMainThread.c:253:NSApplicationMain(): main.1.2
-Bug1398macOSContextOpsOnMainThread.c:255:NSApplicationMain(): main.1.3
-Bug1398macOSContextOpsOnMainThread.c:258:NSApplicationMain(): main.1.5
-Bug1398macOSContextOpsOnMainThread.c:182:create_jvm_thread(): create_jvm_thread.1.1
-Bug1398macOSContextOpsOnMainThread.c:190:create_jvm_thread(): create_jvm_thread.1.2
-Bug1398macOSContextOpsOnMainThread.c:194:create_jvm_thread(): create_jvm_thread.1.X
-Bug1398macOSContextOpsOnMainThread.c:261:NSApplicationMain(): main.1.6
-Bug1398macOSContextOpsOnMainThread.c:59:launchJava(): launchJava.1.1
-Bug1398macOSContextOpsOnMainThread.c:74:launchJava(): launchJava.1.2
-Bug1398macOSContextOpsOnMainThread.c:75:launchJava(): .. using CLASSPATH .:/Users/jogamp/projects/JogAmp/gluegen/build/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/jogl/build/jar/jogl-all.jar
-Bug1398macOSContextOpsOnMainThread.c:76:launchJava(): .. using LIBPATH /Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib
-Bug1398macOSContextOpsOnMainThread.c:30:create_vm(): Found libjli.dylib
-Bug1398macOSContextOpsOnMainThread.c:80:launchJava(): CreateVM:10ad85b80 env:700004022da8 vm_args:700004022d68
-2020-02-19 21:35:33.502 Bug1398macOSContextOpsOnMainThread[1697:65492] App starting...
-Bug1398macOSContextOpsOnMainThread.c:86:launchJava(): VM Created
-Bug1398macOSContextOpsOnMainThread.c:89:launchJava(): launchJava.1.3
-Bug1398macOSContextOpsOnMainThread.c:96:launchJava(): launchJava.1.4
-Bug1398macOSContextOpsOnMainThread.c:101:launchJava(): launchJava.1.5
-Java version: 1.8 (1.8.0_192)
-classloader:sun.misc.Launcher$AppClassLoader@764c12b6
-OS: Mac OS X 10.15.2 x86_64
-w:1920 h:1080 rr:60 bits:32 dim.w:800 dim.h:600
-gc.bounds: java.awt.Rectangle[x=0,y=0,width=1920,height=1080]
-dim: java.awt.Dimension[width=1920,height=1080]
-Bug1398macOSContextOpsOnMainThread.c:103:launchJava(): Just passed NewObject()...
-Bug1398macOSContextOpsOnMainThread.c:122:launchJava(): launchJava.1.X
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.init: tileRendererInUse null
-RedSquareES2 init on Thread[AWT-EventQueue-0,6,main]
-Chosen GLCapabilities: GLCaps[rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2.hw], offscr[fbo]]
-INIT GL IS: jogamp.opengl.gl4.GL4bcImpl
-Swap Interval 0
-GL Profile GLProfile[GL2/GL2.hw]
-GL Version 2.1 (Compat profile, arb, compat[], FBO, hardware) - 2.1 INTEL-14.3.9 [GL 2.1.0, vendor 14.3.9 (INTEL-14.3.9)]
-Quirks [NoOffscreenBitmap, GL4NeedsGL3Request, NeedSharedObjectSync]
-Impl. class jogamp.opengl.gl4.GL4bcImpl
-GL_VENDOR Intel Inc.
-GL_RENDERER Intel Iris OpenGL Engine
-GL_VERSION 2.1 INTEL-14.3.9
-GLSL true, has-compiler-func: true, version: 1.20 / 1.20.0
-GL FBO: basic true, full true
-GL_EXTENSIONS 128
-GLX_EXTENSIONS 0
------------------------------------------------------------------------------------------------------
-ShaderState: attachShaderProgram: -1 -> 1 (enable: true)
- null
- ShaderProgram[id=1, linked=false, inUse=false, program: 1,
- ShaderCode[id=1, type=VERTEX_SHADER, valid=true, shader: 2, source]
- ShaderCode[id=2, type=FRAGMENT_SHADER, valid=true, shader: 3, source]]
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.init FIN
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape 0/0 800x600 of 800x600, swapInterval 1, drawable 0x7fdd09c14d10, tileRendererInUse null
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape FIN
-2020-02-19 21:35:36.508 Bug1398macOSContextOpsOnMainThread[1697:65492] startUpCompletionOperation main thread? ANS - YES
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.dispose: tileRendererInUse null
-Thread[AWT-EventQueue-0,6,main] RedSquareES2.dispose FIN
diff --git a/src/test-native/bug1398/test1398-jogamp240rc_java08-01.log b/src/test-native/bug1398/test1398-jogamp240rc_java08-01.log
new file mode 100644
index 000000000..cf7b37789
--- /dev/null
+++ b/src/test-native/bug1398/test1398-jogamp240rc_java08-01.log
@@ -0,0 +1,86 @@
+Bug1398macOSContextOpsOnMainThread.c:266:NSApplicationMain(): argv[2]: jvmlibjli /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
+Bug1398macOSContextOpsOnMainThread.c:253:NSApplicationMain(): argv[4]: classpath arg -Djava.class.path=.:/Users/jogamp/projects/JogAmp/gluegen/build/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/jogl/build/jar/jogl-all.jar
+Bug1398macOSContextOpsOnMainThread.c:261:NSApplicationMain(): argv[6]: libpath arg -Djava.library.path=/Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib
+Bug1398macOSContextOpsOnMainThread.c:275:NSApplicationMain(): main.1
+Bug1398macOSContextOpsOnMainThread.c:278:NSApplicationMain(): main.1.1
+2020-02-21 19:14:37.376 Bug1398macOSContextOpsOnMainThread[1057:21063] init
+Bug1398macOSContextOpsOnMainThread.c:280:NSApplicationMain(): main.1.2
+Bug1398macOSContextOpsOnMainThread.c:282:NSApplicationMain(): main.1.3
+Bug1398macOSContextOpsOnMainThread.c:285:NSApplicationMain(): main.1.5
+Bug1398macOSContextOpsOnMainThread.c:184:create_jvm_thread(): create_jvm_thread.1.1
+Bug1398macOSContextOpsOnMainThread.c:192:create_jvm_thread(): create_jvm_thread.1.2
+Bug1398macOSContextOpsOnMainThread.c:61:launchJava(): launchJava.1.1
+Bug1398macOSContextOpsOnMainThread.c:76:launchJava(): launchJava.1.2
+Bug1398macOSContextOpsOnMainThread.c:77:launchJava(): .. using CLASSPATH -Djava.class.path=.:/Users/jogamp/projects/JogAmp/gluegen/build/gluegen-rt.jar:/Users/jogamp/projects/JogAmp/jogl/build/jar/jogl-all.jar
+Bug1398macOSContextOpsOnMainThread.c:78:launchJava(): .. using LIBPATH -Djava.library.path=/Users/jogamp/projects/JogAmp/gluegen/build/obj:/Users/jogamp/projects/JogAmp/jogl/build/lib
+Bug1398macOSContextOpsOnMainThread.c:196:create_jvm_thread(): create_jvm_thread.1.X
+Bug1398macOSContextOpsOnMainThread.c:288:NSApplicationMain(): main.1.6
+Bug1398macOSContextOpsOnMainThread.c:39:create_vm(): Found libjli.dylib /Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/MacOS/libjli.dylib
+Bug1398macOSContextOpsOnMainThread.c:82:launchJava(): CreateVM:110285b80 env:700003d1ada8 vm_args:700003d1ad68
+2020-02-21 19:14:37.439 Bug1398macOSContextOpsOnMainThread[1057:21063] App starting...
+Bug1398macOSContextOpsOnMainThread.c:88:launchJava(): VM Created
+Bug1398macOSContextOpsOnMainThread.c:91:launchJava(): launchJava.1.3
+Bug1398macOSContextOpsOnMainThread.c:98:launchJava(): launchJava.1.4
+Bug1398macOSContextOpsOnMainThread.c:103:launchJava(): launchJava.1.5
+Java version: 1.8 (1.8.0_192)
+classloader:sun.misc.Launcher$AppClassLoader@764c12b6
+OS: Mac OS X 10.15.2 x86_64
+w:1920 h:1080 rr:60 bits:32 dim.w:800 dim.h:600
+gc.bounds: java.awt.Rectangle[x=0,y=0,width=1920,height=1080]
+dim: java.awt.Dimension[width=1920,height=1080]
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.init: tileRendererInUse null on Thread[AWT-EventQueue-0,6,main]
+-----------------------------------------------------------------------------------------------------
+Platform: MACOS / Mac OS X 10.15.2 (10.15.2), x86_64 (X86_64, GENERIC_ABI), 4 cores, littleEndian true
+MachineDataInfo: runtimeValidated true, 32Bit false, primitive size / alignment:
+ int8 1 / 1, int16 2 / 2
+ int 4 / 4, long 8 / 8
+ int32 4 / 4, int64 8 / 8
+ float 4 / 4, double 8 / 8, ldouble 16 / 16
+ pointer 8 / 8, page 4096
+Platform: Java Version: 1.8.0_192 (1.8.0u192), VM: Java HotSpot(TM) 64-Bit Server VM, Runtime: Java(TM) SE Runtime Environment
+Platform: Java Vendor: Oracle Corporation, http://java.oracle.com/, JavaSE: true, Java9: false, Java6: true, dynamicLib: true, AWT enabled: true
+-----------------------------------------------------------------------------------------------------
+-----------------------------------------------------------------------------------------------------
+Package: com.jogamp.opengl
+Extension Name: com.jogamp.opengl
+Specification Title: Java Bindings for OpenGL API Specification
+Specification Vendor: JogAmp Community
+Specification Version: 2.4
+Implementation Title: Java Bindings for OpenGL Runtime Environment
+Implementation Vendor: JogAmp Community
+Implementation Vendor ID: com.jogamp
+Implementation URL: http://jogamp.org/
+Implementation Version: 2.4.0-rc-20200106
+Implementation Build: 2.4-bmanual-20200106
+Implementation Branch: master
+Implementation Commit: 0209655c26e9240639c5f0a76ca6ca54ae0584b1
+Implementation SHA Sources: null
+Implementation SHA Classes: null
+Implementation SHA Classes-this: null
+Implementation SHA Natives: null
+Implementation SHA Natives-this: null
+-----------------------------------------------------------------------------------------------------
+Chosen GLCapabilities: GLCaps[rgba 8/8/8/0, opaque, accum-rgba 0/0/0/0, dp/st/ms 16/0/0, dbl, mono , hw, GLProfile[GL2/GL2.hw], offscr[fbo]]
+INIT GL IS: jogamp.opengl.gl4.GL4bcImpl
+Swap Interval 0
+GL Profile GLProfile[GL2/GL2.hw]
+GL Version 2.1 (Compat profile, arb, compat[], FBO, hardware) - 2.1 INTEL-14.3.9 [GL 2.1.0, vendor 14.3.9 (INTEL-14.3.9)]
+Quirks [NoOffscreenBitmap, GL4NeedsGL3Request, NeedSharedObjectSync]
+Impl. class jogamp.opengl.gl4.GL4bcImpl
+GL_VENDOR Intel Inc.
+GL_RENDERER Intel Iris OpenGL Engine
+GL_VERSION 2.1 INTEL-14.3.9
+GLSL true, has-compiler-func: true, version: 1.20 / 1.20.0
+GL FBO: basic true, full true
+GL_EXTENSIONS 128
+GLX_EXTENSIONS 0
+-----------------------------------------------------------------------------------------------------
+ShaderState: attachShaderProgram: -1 -> 1 (enable: true)
+ null
+ ShaderProgram[id=1, linked=false, inUse=false, program: 1,
+ ShaderCode[id=1, type=VERTEX_SHADER, valid=true, shader: 2, source]
+ ShaderCode[id=2, type=FRAGMENT_SHADER, valid=true, shader: 3, source]]
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.init FIN
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape 0/0 800x600 of 800x600, swapInterval 1, drawable 0x7ff875d200c0, tileRendererInUse null
+Thread[AWT-EventQueue-0,6,main] RedSquareES2.reshape FIN
+2020-02-21 19:14:40.445 Bug1398macOSContextOpsOnMainThread[1057:21063] startUpCompletionOperation main thread? ANS - YES