You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Li Jing Qin (JIRA)" <ji...@apache.org> on 2009/05/07 10:13:31 UTC

[jira] Commented: (HARMONY-6041) [classlib][portlib] incorrect parse path contains special unicode charactor

    [ https://issues.apache.org/jira/browse/HARMONY-6041?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12706757#action_12706757 ] 

Li Jing Qin commented on HARMONY-6041:
--------------------------------------

In this patch, I remove the code for removing the '.' because GetFullPathName does this for us. Using GetFullPathNameW can help us with long name path and filename. By inserting '\\?\' prefix after we get the full path, we can deal the situation whether the input path is a relative path or a absolute path.

> [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
>            Assignee: Jimmy, Jing Lv
>             Fix For: 5.0M9
>
>         Attachments: HARMONY-6041-v2.diff, HARMONY-6041.diff
>
>
> 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.