You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Alexey Petrenko (JIRA)" <ji...@apache.org> on 2006/07/10 20:23:30 UTC

[jira] Commented: (HARMONY-791) [classlib][lang] unexpected NegativeArraySizeException for java.lang.String(int[], 2, Integer.MAX_VALUE)

    [ http://issues.apache.org/jira/browse/HARMONY-791?page=comments#action_12420140 ] 

Alexey Petrenko commented on HARMONY-791:
-----------------------------------------

According your patch...

Don't you think that the simply modified test will fail with your patch?

public class StringTest { 
    public static void main (String[] args) { 
        new String(new int[Integer.MAX_VALUE], 2, Integer.MAX_VALUE); 
    } 
}

With enough memory of course :)
I do not have enough memory on my machine so I can not check.

I suggest to check the sum of offset and count.

> [classlib][lang] unexpected NegativeArraySizeException for java.lang.String(int[], 2, Integer.MAX_VALUE)
> --------------------------------------------------------------------------------------------------------
>
>          Key: HARMONY-791
>          URL: http://issues.apache.org/jira/browse/HARMONY-791
>      Project: Harmony
>         Type: Bug

>   Components: Classlib
>     Reporter: Vladimir Ivanov
>  Attachments: String.patch, StringTest.patch
>
> The harmony method java.lang.String(int[], 2, Integer.MAX_VALUE) throws NegativeArraySizeException while spec requires IndexOutOfBoundsException. 
> ================== test.java =======================
> public class test  {
>     public static void main (String[] args) { 
>           new String(new int[] {}, 2, Integer.MAX_VALUE);                                                     
>     } 
> }
> ================================================
> 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))
> java.lang.StringIndexOutOfBoundsException: String index out of range: -2147483647
>         at java.lang.String.<init>([III)V(Unknown Source)
>         at test.main(test.java:3)
> 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.
> Exception in thread "main" java.lang.NegativeArraySizeException
>         at java.lang.String.<init>(String.java:504)
>         at test.main(test.java:3)

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