You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by py...@apache.org on 2006/08/24 12:15:08 UTC
svn commit: r434367 - in
/incubator/harmony/enhanced/classlib/trunk/modules/nio/src:
main/java/java/nio/CharSequenceAdapter.java
main/java/java/nio/ShortArrayBuffer.java
test/java/common/org/apache/harmony/tests/java/nio/ShortBufferTest.java
Author: pyang
Date: Thu Aug 24 03:15:03 2006
New Revision: 434367
URL: http://svn.apache.org/viewvc?rev=434367&view=rev
Log:
Fix yet another two bugs on array index checking
Modified:
incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/CharSequenceAdapter.java
incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/ShortArrayBuffer.java
incubator/harmony/enhanced/classlib/trunk/modules/nio/src/test/java/common/org/apache/harmony/tests/java/nio/ShortBufferTest.java
Modified: incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/CharSequenceAdapter.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/CharSequenceAdapter.java?rev=434367&r1=434366&r2=434367&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/CharSequenceAdapter.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/CharSequenceAdapter.java Thu Aug 24 03:15:03 2006
@@ -117,7 +117,7 @@
}
public final CharBuffer put(char[] src, int off, int len) {
- if ((off < 0 ) || (len < 0) || off + len > src.length) {
+ if ((off < 0 ) || (len < 0) || (long)off + (long)len > src.length) {
throw new IndexOutOfBoundsException();
}
Modified: incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/ShortArrayBuffer.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/ShortArrayBuffer.java?rev=434367&r1=434366&r2=434367&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/ShortArrayBuffer.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/nio/src/main/java/java/nio/ShortArrayBuffer.java Thu Aug 24 03:15:03 2006
@@ -65,7 +65,7 @@
public final ShortBuffer get(short[] dest, int off, int len) {
int length = dest.length;
- if (off < 0 || len < 0 || off + len > length) {
+ if (off < 0 || len < 0 || (long)off + (long)len > length) {
throw new IndexOutOfBoundsException();
}
if (len > remaining()) {
Modified: incubator/harmony/enhanced/classlib/trunk/modules/nio/src/test/java/common/org/apache/harmony/tests/java/nio/ShortBufferTest.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/nio/src/test/java/common/org/apache/harmony/tests/java/nio/ShortBufferTest.java?rev=434367&r1=434366&r2=434367&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/nio/src/test/java/common/org/apache/harmony/tests/java/nio/ShortBufferTest.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/nio/src/test/java/common/org/apache/harmony/tests/java/nio/ShortBufferTest.java Thu Aug 24 03:15:03 2006
@@ -296,13 +296,25 @@
}
assertEquals(buf.position(), 0);
try {
- buf.get(array, 2, -1);
+ buf.get((short[])null, 2, -1);
fail("Should throw Exception"); //$NON-NLS-1$
- } catch (IndexOutOfBoundsException e) {
+ } catch (NullPointerException e) {
// expected
}
try {
buf.get(array, 2, array.length);
+ fail("Should throw Exception"); //$NON-NLS-1$
+ } catch (IndexOutOfBoundsException e) {
+ // expected
+ }
+ try {
+ buf.get(array, 1, Integer.MAX_VALUE);
+ fail("Should throw Exception"); //$NON-NLS-1$
+ } catch (IndexOutOfBoundsException e) {
+ // expected
+ }
+ try {
+ buf.get(array, Integer.MAX_VALUE, 1);
fail("Should throw Exception"); //$NON-NLS-1$
} catch (IndexOutOfBoundsException e) {
// expected