[ http://issues.apache.org/jira/browse/HARMONY-649?page=comments#action_12421621 ]
Sergey Soldatov commented on HARMONY-649:
-----------------------------------------
I don't think this patch is applicable since using a negative parameter is wrong, according
to the documentation:
Parameters:
run - the index of the run, between 0 and getRunCount()
Moreover, RI behaves in the say way if you use the real text with runs. Here is the same test
case with small modification.
//=================================== test.java =============================
import java.text.*;
public class test {
public static void main (String[] args) {
String text = "This text has \u0634\u0627\u062f\u062c\u0645\u0647\u0648\u0631 123,456
\u0645\u0646 (Arabic)";
Bidi bidi = new Bidi(text, Bidi.DIRECTION_LEFT_TO_RIGHT);
System.out.println("Bidi is " + bidi);
try {
System.out.println("getRunLimit(-1) = " + bidi.getRunLimit(-1) + "\npassed!");
} catch (Exception e) {
e.printStackTrace();
System.out.println("failed");
}
}
}
//=================================== test.java =============================
I think we need to close this issue as not a bug.
> [classlib][text]compatibility: unexpected ArrayIndexOutOfBoundsException for java.text.Bidi.getRunLimit(-1)
> -----------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-649
> URL: http://issues.apache.org/jira/browse/HARMONY-649
> Project: Harmony
> Issue Type: Bug
> Reporter: Vladimir Ivanov
> Attachments: Bidi.patch, BidiTest.patch
>
>
> The Harmony method java.text.Bidi.getRunLimit(-1) throws ArrayIndexOutOfBoundsException
while RI return valid value.
> Note, the spec says nothing about exceptions in this case.
> ============ test.java ===================
> import java.text.*;
> public class test {
> public static void main (String[] args) {
> Bidi bidi = new Bidi("text", Bidi.DIRECTION_LEFT_TO_RIGHT);
> try {
> System.out.println("getRunLimit(-1) = " + bidi.getRunLimit(-1) + "\npassed!");
> } catch (Exception e) {
> e.printStackTrace();
> System.out.println("failed");
> }
> }
> }
> ======================================
> C:\tmp\tmp17>C:\jrockit-j2sdk1.4.2_04\bin\java.exe -showversion test
> java version "1.4.2_04"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
> BEA WebLogic JRockit(TM) 1.4.2_04 JVM (build ari-31788-20040616-1132-win-ia32,
> Native Threads, GC strategy: parallel)
> getRunLimit(-1) = 4
> passed!
> 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 app
> licable.
> java.lang.ArrayIndexOutOfBoundsException: Array index out of range: -1
> at java.text.Bidi.getRunLimit(Bidi.java:349)
> at test.main(test.java:7)
> failed
> C:\tmp\tmp17>
--
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
|