summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xsrc/java/com/jogamp/common/nio/Buffers.java20
-rw-r--r--src/java/jogamp/common/os/PlatformPropsImpl.java6
2 files changed, 21 insertions, 5 deletions
diff --git a/src/java/com/jogamp/common/nio/Buffers.java b/src/java/com/jogamp/common/nio/Buffers.java
index 695dc47..4a5255e 100755
--- a/src/java/com/jogamp/common/nio/Buffers.java
+++ b/src/java/com/jogamp/common/nio/Buffers.java
@@ -359,11 +359,25 @@ public class Buffers {
if (buf == null) {
return true;
}
- if (buf instanceof Buffer) {
- return ((Buffer) buf).isDirect();
+ if (buf instanceof ByteBuffer) {
+ return ((ByteBuffer) buf).isDirect();
+ } else if (buf instanceof IntBuffer) {
+ return ((IntBuffer) buf).isDirect();
+ } else if (buf instanceof ShortBuffer) {
+ return ((ShortBuffer) buf).isDirect();
+ } else if (buf instanceof FloatBuffer) {
+ return ((FloatBuffer) buf).isDirect();
+ } else if (buf instanceof DoubleBuffer) {
+ return ((DoubleBuffer) buf).isDirect();
+ } else if (buf instanceof LongBuffer) {
+ return ((LongBuffer) buf).isDirect();
+ } else if (buf instanceof CharBuffer) {
+ return ((CharBuffer) buf).isDirect();
} else if (buf instanceof PointerBuffer) {
return ((PointerBuffer) buf).isDirect();
- }
+ } else if (buf instanceof Buffer) {
+ throw new IllegalArgumentException("Unexpected buffer type Buffer.isDirect() operation is undefined");
+ }
throw new IllegalArgumentException("Unexpected buffer type " + buf.getClass().getName());
}
diff --git a/src/java/jogamp/common/os/PlatformPropsImpl.java b/src/java/jogamp/common/os/PlatformPropsImpl.java
index 111523d..3010a31 100644
--- a/src/java/jogamp/common/os/PlatformPropsImpl.java
+++ b/src/java/jogamp/common/os/PlatformPropsImpl.java
@@ -90,8 +90,10 @@ public abstract class PlatformPropsImpl {
}
private static final boolean initIsJavaSE() {
- if(JAVA_RUNTIME_NAME.indexOf("Java SE") != -1) {
- return true;
+ if(JAVA_RUNTIME_NAME!=null) {
+ if(JAVA_RUNTIME_NAME.indexOf("Java SE") != -1) {
+ return true;
+ }
}
// probe for classes we need on a SE environment