diff options
author | kbr <[email protected]> | 2005-12-24 05:00:46 +0000 |
---|---|---|
committer | kbr <[email protected]> | 2005-12-24 05:00:46 +0000 |
commit | 7b23145c1cc0345ee193840f19da1b1a6bcc56f2 (patch) | |
tree | 79ad0615536d7dda050944b9bd071e277986ad90 | |
parent | e645c07856f1c7ce42ca420737d1f8e269a83e75 (diff) |
Worked around bug in OpenAL32.dll "wrapper" DLL which was incorrectly
matching joal.dll with the wildcard "*oal.dll" while searching for
"wrap_oal.dll", an actual (misnamed) OpenAL implementation. Bug caused
a failure to look up a function pointer and subsequent dereference of
NULL. Will report this bug to the OpenAL development team, but most
expedient workaround was to rename joal.dll to joal_native.dll -- done
here.
git-svn-id: file:///home/mbien/NetBeansProjects/JOGAMP/joal-sync/git-svn/../svn-server-sync/joal/branches/gluegen-branch-1-0@98 03bf7f67-59de-4072-a415-9a990d468a3f
-rwxr-xr-x | make/build.xml | 2 | ||||
-rwxr-xr-x | src/java/net/java/games/joal/NativeLibLoader.java | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/make/build.xml b/make/build.xml index 7cdfd42..e04f629 100755 --- a/make/build.xml +++ b/make/build.xml @@ -616,7 +616,7 @@ <target name="c.build.joal"> <antcall target="c.build" inheritRefs="true"> <param name="c.compiler.src.files" value="c.src.files.joal"/> - <param name="output.lib.name" value="joal"/> + <param name="output.lib.name" value="joal_native"/> </antcall> <antcall target="c.rename.joal.lib.mingw" inheritRefs="true" /> <antcall target="c.rename.joal.lib.macosx" inheritRefs="true" /> diff --git a/src/java/net/java/games/joal/NativeLibLoader.java b/src/java/net/java/games/joal/NativeLibLoader.java index a5297af..394d1b4 100755 --- a/src/java/net/java/games/joal/NativeLibLoader.java +++ b/src/java/net/java/games/joal/NativeLibLoader.java @@ -42,7 +42,12 @@ class NativeLibLoader { static { AccessController.doPrivileged(new PrivilegedAction() { public Object run() { - System.loadLibrary("joal"); + // Workaround for problem in OpenAL32.dll, which is actually + // the "wrapper" DLL which looks for real OpenAL + // implementations like nvopenal.dll and "*oal.dll". + // joal.dll matches this wildcard and a bug in OpenAL32.dll + // causes a call through a null function pointer. + System.loadLibrary("joal_native"); // Workaround for 4845371. // Make sure the first reference to the JNI GetDirectBufferAddress is done |