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-783) [classlib][math] unexpected ArrayIndexOutOfBoundsException for java.math.BigDecimal(new char[] {})
Date Thu, 06 Jul 2006 10:16:29 GMT
[classlib][math] unexpected ArrayIndexOutOfBoundsException for java.math.BigDecimal(new char[]
{})
--------------------------------------------------------------------------------------------------

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

    Reporter: Vladimir Ivanov


The Harmony methods 
java.math.BigDecimal(new char[])
java.math.BigDecimal (char[] in ,int offset ,int len),
java.math.BigDecimal (char[] in, int offset, int len, MathContext mc),
java.math.BigDecimal (char[] in, MathContext mc)
throws unexpected ArrayIndexOutOfBoundsException for 0 length array while spec says:
"Throws: NumberFormatException - if in is not a valid representation of a BigDecimal."

=================== test.java =============================
import java.math.*;

public class test {
  public static void main(String args[] ) {
                try {
                        System.out.println("" + new BigDecimal(new char[] {}));
                } catch (NumberFormatException e) {
	                System.out.println("passed: " + e);
                } catch (Exception e) {
	                System.out.println("failed: " + e);
                }
                try {
                        System.out.println("" + new BigDecimal(new char[] {}, 0, 0));
                } catch (NumberFormatException e) {
	                System.out.println("passed: " + e);
                } catch (Exception e) {
	                System.out.println("failed: " + e);
                }
                try {
                        System.out.println("" + new BigDecimal(new char[] {}, 0, 0, MathContext.DECIMAL32));
                } catch (NumberFormatException e) {
	                System.out.println("passed: " + e);
                } catch (Exception e) {
	                System.out.println("failed: " + e);
                }
                try {
                        System.out.println("" + new BigDecimal(new char[] {}, MathContext.DECIMAL32));
                } catch (NumberFormatException e) {
	                System.out.println("passed: " + e);
                } catch (Exception e) {
	                System.out.println("failed: " + 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))

passed: java.lang.NumberFormatException
passed: java.lang.NumberFormatException
passed: java.lang.NumberFormatException
passed: java.lang.NumberFormatException

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.
failed: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
failed: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
failed: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
failed: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0

-- 
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