harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Regis Xu (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-6041) [classlib][portlib] incorrect parse path contains special unicode charactor
Date Thu, 11 Dec 2008 06:31:46 GMT
[classlib][portlib] incorrect parse path contains special unicode charactor
---------------------------------------------------------------------------

                 Key: HARMONY-6041
                 URL: https://issues.apache.org/jira/browse/HARMONY-6041
             Project: Harmony
          Issue Type: Bug
          Components: Classlib
    Affects Versions: 5.0M8
            Reporter: Regis Xu
             Fix For: 5.0M9


test case:

        String s = "\u5C73";
        File file = new File(s);
        System.out.println(file.mkdir());
        System.out.println(file.exists());
        System.out.println(file.getCanonicalPath());

output of RI:
true
true
C:\work\workspace\temp\屳

output of Harmony:
false
true
C:\work\workspace\temp\?

I found the root cause is in hyfile.c:convert_path_to_unicode, which convert UTF-8 byte array
to unicode byte array
at hyfile.c::437 invoke 
GetFullPathNameA(path, ABS_PATH_BUF_LEN, absPath, (void*) 0) 

GetFullPathNameA is ANSI version, but path is encoded as UTF-8,  this may corrupt the path.

I have got a fix for this, will attach patch soon.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message