harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vladimir Ivanov (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-801) [classlib][nio] java.nio.ByteBuffer.put(byte[], int off, Integer.MAX_VALUE) throws java.nio.BufferUnderflowException instead of IndexOutOfBoundsException
Date Fri, 07 Jul 2006 10:13:29 GMT
[classlib][nio]  java.nio.ByteBuffer.put(byte[], int off, Integer.MAX_VALUE)  throws java.nio.BufferUnderflowException
instead of IndexOutOfBoundsException
-----------------------------------------------------------------------------------------------------------------------------------------------------------

         Key: HARMONY-801
         URL: http://issues.apache.org/jira/browse/HARMONY-801
     Project: Harmony
        Type: Bug

  Components: Classlib  
    Reporter: Vladimir Ivanov


The Harmony methods java.nio.Byte/Char/Float/Int/Long/ShortBuffer.put(byte[], int off, int
len)  throws java.nio.BufferUnderflowException while spec requires IndexOutOfBoundsException.

==================== test.java ======================
import java.nio.*;
public class test  { 
    public static void main (String[] args) {   
       try {
           CharBuffer.allocate(10).put(new char[] {0}, 1, Integer.MAX_VALUE);
       } catch (Exception e) {
           System.out.println("c: " + e);
       }
       try {
           FloatBuffer.allocate(10).put(new float[] {0}, 1, Integer.MAX_VALUE);
       } catch (Exception e) {
           System.out.println("f: " + e);
       }
       try {
           DoubleBuffer.allocate(10).put(new double[] {0}, 1, Integer.MAX_VALUE);
       } catch (Exception e) {
           System.out.println("d: " + e);
       }
       try {
           IntBuffer.allocate(10).put(new int[] {0}, 1, Integer.MAX_VALUE);
       } catch (Exception e) {
           System.out.println("i: " + e);
       }
       try {
           LongBuffer.allocate(10).put(new long[] {0}, 1, Integer.MAX_VALUE);
       } catch (Exception e) {
           System.out.println("l: " + e);
       }
       try {
           ShortBuffer.allocate(10).put(new short[] {0}, 1, Integer.MAX_VALUE);
       } catch (Exception e) {
           System.out.println("s: " + e);
       }
    }
}
==================================================

Output:
C:\tmp\tmp17>C:\jrockit-jdk1.5.0-windows-ia32\bin\java.exe -showversion test
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
BEA WebLogic JRockit(R) (build dra-38972-20041208-2001-win-ia32, R25.0.0-75, GC: System optimized
over throughput (initial strategy singleparpar))

c: java.lang.IndexOutOfBoundsException
f: java.lang.IndexOutOfBoundsException
d: java.lang.IndexOutOfBoundsException
i: java.lang.IndexOutOfBoundsException
l: java.lang.IndexOutOfBoundsException
s: java.lang.IndexOutOfBoundsException

C:\tmp\tmp17>C:\harmony\trunk_0427\deploy\jdk\jre\bin\java.exe -showversion test
java version 1.5 (subset)

(c) Copyright 1991, 2006 The Apache Software Foundation or its licensors, as applicable.
c: java.nio.BufferOverflowException
f: java.nio.BufferOverflowException
d: java.lang.IndexOutOfBoundsException
i: java.nio.BufferOverflowException
l: java.nio.BufferOverflowException
s: java.nio.BufferOverflowException


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message