You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Stepan Mishura (JIRA)" <ji...@apache.org> on 2006/07/28 12:17:18 UTC
[jira] Closed: (HARMONY-783) [classlib][math] unexpected
ArrayIndexOutOfBoundsException for java.math.BigDecimal(new char[] {})
[ http://issues.apache.org/jira/browse/HARMONY-783?page=all ]
Stepan Mishura closed HARMONY-783.
----------------------------------
Verified by Vladimir.
> [classlib][math] unexpected ArrayIndexOutOfBoundsException for java.math.BigDecimal(new char[] {})
> --------------------------------------------------------------------------------------------------
>
> Key: HARMONY-783
> URL: http://issues.apache.org/jira/browse/HARMONY-783
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Vladimir Ivanov
> Assigned To: Stepan Mishura
> Attachments: BigDecimal.patch, BigDecimalConstructorsTest.patch
>
>
> 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