diff options
author | Sven Gothel <[email protected]> | 2012-03-26 04:02:48 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2012-03-26 04:02:48 +0200 |
commit | 1c03dfd6d1939a46018583419956e350e531f4fe (patch) | |
tree | a07a1b75e9e1ab3576de1961ff0d01c56ce6ac68 /src/java/com/jogamp/common/os/DynamicLibraryBundle.java | |
parent | 3d527ea538c9e9897f86a0f6bdae0cab44d239c3 (diff) |
DynamicLibraryBundle*: Allow DynamicLibraryBundleInfo impl. to designate a thread to load native libraries. (Fix Bug 566)
Due to requirements of native libraries using tls_model("global-dynamic")
a thread can be designated to load the 'tool' native libraries.
In case the tool lib uses tls_model("global-dynamic"),
an implementation shall try to let the early most thread load it.
For example, AWT-EDT shall load Mesa8 (Ubuntu-TLS) libGL.so.1
Diffstat (limited to 'src/java/com/jogamp/common/os/DynamicLibraryBundle.java')
-rwxr-xr-x | src/java/com/jogamp/common/os/DynamicLibraryBundle.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/java/com/jogamp/common/os/DynamicLibraryBundle.java b/src/java/com/jogamp/common/os/DynamicLibraryBundle.java index e90209a..efb6d89 100755 --- a/src/java/com/jogamp/common/os/DynamicLibraryBundle.java +++ b/src/java/com/jogamp/common/os/DynamicLibraryBundle.java @@ -81,7 +81,10 @@ public class DynamicLibraryBundle implements DynamicLookupHelper { nativeLibraries = new ArrayList<NativeLibrary>(); toolLibNames = info.getToolLibNames(); glueLibNames = info.getGlueLibNames(); - loadLibraries(); + info.getLibLoaderExecutor().invoke(true, new Runnable() { + public void run() { + loadLibraries(); + } } ) ; toolGetProcAddressFuncNameList = info.getToolGetProcAddressFuncNameList(); if( null != toolGetProcAddressFuncNameList ) { toolGetProcAddressFuncNameSet = new HashSet<String>(toolGetProcAddressFuncNameList); |