From ae4c2c3e59ed92caa6f0e18360b7236e50899bf6 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Wed, 5 Jul 2023 10:04:16 +0200 Subject: GlueGen JavaCallback/LibraryOnLoad: Always include the `libraryBasename` agnostic 'emitJNIEnvDecl()' (declaration) in JNI code; Detach the thread from the JVM if newly attach in callback! --- src/java/com/jogamp/gluegen/JavaEmitter.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/java/com/jogamp/gluegen/JavaEmitter.java') diff --git a/src/java/com/jogamp/gluegen/JavaEmitter.java b/src/java/com/jogamp/gluegen/JavaEmitter.java index 4a81a01..96202bf 100644 --- a/src/java/com/jogamp/gluegen/JavaEmitter.java +++ b/src/java/com/jogamp/gluegen/JavaEmitter.java @@ -910,7 +910,7 @@ public class JavaEmitter implements GlueEmitter { final String fname = nRoot + File.separator + cUnitName; jniUnit = openCUnit(fname, cUnitName); // jniUnit.emitHeader(structClassPkgName, containingJTypeName, Collections.emptyList()); - jniUnit.emitHeader(null, structClassPkgName, containingJTypeName, cfg.customCCode()); + jniUnit.emitHeader(structClassPkgName, containingJTypeName, cfg.customCCode()); } else { jniUnit = null; } @@ -3018,7 +3018,7 @@ public class JavaEmitter implements GlueEmitter { if( !cfg.getJavaCallbackList().isEmpty() && null == cfg.libraryOnLoadName() ) { LOG.log(WARNING, "JavaCallback used, but no 'LibraryOnLoad' basename specified for JNI_OnLoad(..). Exactly one native code-unit for the library must specify 'LibraryOnLoad' basename"); } - cUnit().emitHeader(cfg.libraryOnLoadName(), getImplPackageName(), cfg.implClassName(), cfg.customCCode()); + cUnit().emitHeader(getImplPackageName(), cfg.implClassName(), cfg.customCCode()); } } catch (final Exception e) { throw new RuntimeException( -- cgit v1.2.3