diff options
Diffstat (limited to 'libjava/java/nio')
-rw-r--r-- | libjava/java/nio/DoubleBuffer.java | 12 | ||||
-rw-r--r-- | libjava/java/nio/FloatBuffer.java | 12 | ||||
-rw-r--r-- | libjava/java/nio/IntBuffer.java | 12 | ||||
-rw-r--r-- | libjava/java/nio/LongBuffer.java | 12 | ||||
-rw-r--r-- | libjava/java/nio/ShortBuffer.java | 12 |
5 files changed, 60 insertions, 0 deletions
diff --git a/libjava/java/nio/DoubleBuffer.java b/libjava/java/nio/DoubleBuffer.java index 72a6c09078d..036579a802b 100644 --- a/libjava/java/nio/DoubleBuffer.java +++ b/libjava/java/nio/DoubleBuffer.java @@ -125,11 +125,23 @@ public abstract class DoubleBuffer extends Buffer implements Comparable public final double[] array() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return backing_buffer; } public final int arrayOffset() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return array_offset; } diff --git a/libjava/java/nio/FloatBuffer.java b/libjava/java/nio/FloatBuffer.java index b780ff597d8..8531cb99f9d 100644 --- a/libjava/java/nio/FloatBuffer.java +++ b/libjava/java/nio/FloatBuffer.java @@ -126,11 +126,23 @@ public abstract class FloatBuffer extends Buffer implements Comparable public final float[] array() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return backing_buffer; } public final int arrayOffset() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return array_offset; } diff --git a/libjava/java/nio/IntBuffer.java b/libjava/java/nio/IntBuffer.java index aca6e0f1902..ddf03d8364d 100644 --- a/libjava/java/nio/IntBuffer.java +++ b/libjava/java/nio/IntBuffer.java @@ -126,11 +126,23 @@ public abstract class IntBuffer extends Buffer implements Comparable public final int[] array() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return backing_buffer; } public final int arrayOffset() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return array_offset; } diff --git a/libjava/java/nio/LongBuffer.java b/libjava/java/nio/LongBuffer.java index 0ddc7938a49..63eb5af1a11 100644 --- a/libjava/java/nio/LongBuffer.java +++ b/libjava/java/nio/LongBuffer.java @@ -126,11 +126,23 @@ public abstract class LongBuffer extends Buffer implements Comparable public final long[] array() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return backing_buffer; } public final int arrayOffset() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return array_offset; } diff --git a/libjava/java/nio/ShortBuffer.java b/libjava/java/nio/ShortBuffer.java index 512c9fd8bec..7a71cad6d85 100644 --- a/libjava/java/nio/ShortBuffer.java +++ b/libjava/java/nio/ShortBuffer.java @@ -126,11 +126,23 @@ public abstract class ShortBuffer extends Buffer implements Comparable public final short[] array() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return backing_buffer; } public final int arrayOffset() { + if (backing_buffer == null) + throw new UnsupportedOperationException (); + + if (isReadOnly ()) + throw new ReadOnlyBufferException (); + return array_offset; } |