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

[jira] Created: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) 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


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


[jira] Updated: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Ilya Okomin (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-829?page=all ]

Ilya Okomin updated HARMONY-829:
--------------------------------

    Attachment: Harmony-829.patch
                Harmony-829-test.patch

Alexey, thanks for looking into my patch!
I've updated patch and test to the latest repository version. Please try them!

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Alexey Petrenko
>         Attachments: FileTest.patch, FileTest.patch, Harmony-829-test.patch, Harmony-829.patch, patch-829.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

        

[jira] Assigned: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Alexey Petrenko (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-829?page=all ]

Alexey Petrenko reassigned HARMONY-829:
---------------------------------------

    Assignee: Alexey Petrenko

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Alexey Petrenko
>         Attachments: FileTest.patch, FileTest.patch, patch-829.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

        

[jira] Commented: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-829?page=comments#action_12446804 ] 
            
Vladimir Ivanov commented on HARMONY-829:
-----------------------------------------

verified, thanks

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Alexey Petrenko
>         Attachments: FileTest.patch, FileTest.patch, Harmony-829-test.patch, Harmony-829.patch, patch-829.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

        

[jira] Commented: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Ilya Okomin (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-829?page=comments#action_12446886 ] 
            
Ilya Okomin commented on HARMONY-829:
-------------------------------------

Alexey, thanks for applying my patch.
Everything works as expected.

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Alexey Petrenko
>         Attachments: FileTest.patch, FileTest.patch, Harmony-829-test.patch, Harmony-829.patch, patch-829.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

        

[jira] Commented: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Alexey Petrenko (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/HARMONY-829?page=comments#action_12446588 ] 
            
Alexey Petrenko commented on HARMONY-829:
-----------------------------------------

Ilya,
sources are changed and I can not apply your fix. Can you please adjust it?

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Alexey Petrenko
>         Attachments: FileTest.patch, FileTest.patch, patch-829.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

        

[jira] Resolved: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Alexey Petrenko (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-829?page=all ]

Alexey Petrenko resolved HARMONY-829.
-------------------------------------

    Resolution: Fixed

I've applied the patch.
Ilya, please check that it's OK.

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Assigned To: Alexey Petrenko
>         Attachments: FileTest.patch, FileTest.patch, Harmony-829-test.patch, Harmony-829.patch, patch-829.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

        

[jira] Updated: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Vladimir Ivanov (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-829?page=all ]

Vladimir Ivanov updated HARMONY-829:
------------------------------------

    Attachment: FileTest.patch

unit test

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


[jira] Updated: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Ilya Okomin (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-829?page=all ]

Ilya Okomin updated HARMONY-829:
--------------------------------

    Attachment: patch-829.patch

Please, try this patch.

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Attachments: FileTest.patch, FileTest.patch, patch-829.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

        

[jira] Updated: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Ilya Okomin (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/HARMONY-829?page=all ]

Ilya Okomin updated HARMONY-829:
--------------------------------

    Attachment: FileTest.patch

I've updated regression test to cover this issue.

> [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
>          Issue Type: Bug
>          Components: Classlib
>            Reporter: Vladimir Ivanov
>         Attachments: FileTest.patch, FileTest.patch, patch-829.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

        

[jira] Commented: (HARMONY-829) [classlib][io] unexpected result for java.io.File.compareTo(File) method

Posted by "Alexey Petrenko (JIRA)" <ji...@apache.org>.
    [ 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