harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Petrenko (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method
Date Wed, 12 Jul 2006 11:38:30 GMT
    [ http://issues.apache.org/jira/browse/HARMONY-829?page=comments#action_12420593 ] 

Alexey Petrenko commented on HARMONY-829:
-----------------------------------------

Small investigation shown that the problem is not in the File.compareTo method but in File.getPath
method which returns different path in this case.

As we can see from your output RI returns "01" and "0" as paths, but Harmony returns "01\"
and "0\". String.compareTo and String.CompareToIgnoreCase methods returns the same results
for this string on RI and Harmony.

So the only way to fix this bug is to fix File.getPath method.

> [classlib][io] unexpected result for java.io.File.compareTo(File) method
> ------------------------------------------------------------------------
>
>          Key: HARMONY-829
>          URL: http://issues.apache.org/jira/browse/HARMONY-829
>      Project: Harmony
>         Type: Bug

>   Components: Classlib
>     Reporter: Vladimir Ivanov
>  Attachments: FileTest.patch
>
> The Harmony method java.io.File.compareTo(File) returns positive value while RI returns
negative.
> ================= test.java ====================
> import java.io.*;
> public class test  { 
>     public static void main (String[] args) {        
>         File f1 = new File("01", "");
>         File f2 = new File("0", "");
>         System.out.println("f1.getPath() = " + f1.getPath() + ", f2.getPath() = " + f2.getPath());
>         System.out.println("f2.compareTo(f1) = " + f2.compareTo(f1) + ", f1.compareTo(f2)
= " + f1.compareTo(f2));
>    }
> } 
> ============================================
> 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))
> f1.getPath() = 01, f2.getPath() = 0
> f2.compareTo(f1) = -1, f1.compareTo(f2) = 1
> 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.
> f1.getPath() = 01\, f2.getPath() = 0\
> f2.compareTo(f1) = 43, f1.compareTo(f2) = -43

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