diff options
author | Sven Gothel <sgothel@jausoft.com> | 2023-11-28 12:08:55 +0100 |
---|---|---|
committer | Sven Gothel <sgothel@jausoft.com> | 2023-11-28 12:08:55 +0100 |
commit | 1aa6f3080953eb4b3a4018b805a014c95dfce4dd (patch) | |
tree | 1d0035f9d1d9afd78d4234fd7dd5ccc14ffb4c86 /src/java/jogamp/openal | |
parent | 072c55ca78d57ce6cee44a83a78cffe1559f2b81 (diff) |
Bug 1475: Minor revision of orig patch-set
- Implement ALC.alcIsDoubleNullTerminatedString() in Java w/ our existing functionality,
drop JNI function
- JoalVersion.devicesToString(..) revert to original API
dropping boolean params
- C: Drop using stdbool.h, earmarked as obsolete in std
Diffstat (limited to 'src/java/jogamp/openal')
-rw-r--r-- | src/java/jogamp/openal/ALCImpl.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/java/jogamp/openal/ALCImpl.java b/src/java/jogamp/openal/ALCImpl.java index f08541c..cdde31b 100644 --- a/src/java/jogamp/openal/ALCImpl.java +++ b/src/java/jogamp/openal/ALCImpl.java @@ -15,7 +15,6 @@ import java.util.ArrayList; /** * ALC implementation. - * @author Michael Bien */ public class ALCImpl extends ALCAbstractImpl { public boolean aclEnumerationExtIsPresent() { @@ -27,11 +26,14 @@ public class ALCImpl extends ALCAbstractImpl { } public boolean alcIsDoubleNullTerminatedString(final ALCdevice device, final int param) { - return dispatch_alcIsDoubleNullTerminatedString(((device == null) ? null : device.getBuffer()), param); + return ( null == device || 0 == device.getDirectBufferAddress() ) && + ( param == ALC_DEVICE_SPECIFIER || + param == ALC_CAPTURE_DEVICE_SPECIFIER || + param == ALC_ALL_DEVICES_SPECIFIER + ); } - public native boolean dispatch_alcIsDoubleNullTerminatedString(ByteBuffer deviceBuffer, int param); - + @Override public String alcGetString(final ALCdevice device, final int param) { if (alcIsDoubleNullTerminatedString(device, param)) { throw new ALException("Call alcGetString to get double null terminated string"); @@ -67,10 +69,12 @@ public class ALCImpl extends ALCAbstractImpl { } private native java.nio.ByteBuffer dispatch_alcGetStringImpl1(ByteBuffer deviceBuffer, int param, long addr); + @Override public String[] alcGetDeviceSpecifiers() { return alcGetStringAsDoubleNullTerminatedString(null, ALC_DEVICE_SPECIFIER); } + @Override public String[] alcGetCaptureDeviceSpecifiers() { return alcGetStringAsDoubleNullTerminatedString(null, ALC_CAPTURE_DEVICE_SPECIFIER); } |