Greetings wine hackers,
Our company used wine-20030115 for a while now, to be able to run our windows product on top of the GNU/Linux OS.
But since we updated to the latest wine (ie wine-20040309), our path conversion is wrong.
The relevant bit of our .config looks as follows:
[Drive F] "Path" = "%HOME%" "Type" = "network"
Which was automatically generated by wineinstall, btw.
Anyway, we used to use GetLongPathNameA to get the unix to window name conversion right (which was inspired by the winepath program). But in this latest version, GetLongPathNameA was replaced by GetFullPathNameA (in winepath)..but neither seems to work right.
Please consider the attached code as an example. It retrieves the home directory of the current user, and tries to look up the windows version of it. In my case, I got:
Unix format Home Directory: /home/felipewd GetFullPathNameA returned: F:\home\felipewd GetLongPathNameA returned:
And the expected return was "F:" in the windows version (GetLongPathNameA didn't even returned an entry)...am I right?
So, if there's any more tests you'd like me to do, or if there's anything I can do to help fixing this, please let me know.
Cheers,
Felipe
Unix format Home Directory: /home/felipewd GetFullPathNameA returned: F:\home\felipewd GetLongPathNameA returned:
this should fix both cases, however, this may also step on Alexandre's toes, so he may not apply on the spot however, I assumed that, when supplied with a fully qualified unix pathname, - GetFullPathName will return the same unix path name - Get{Short|Long}PathName will return the corresponding windows path (because GetFullPathName only works on path syntax (ie adds current drive or directory when absent), but not on the path semantics (as Get{Short|Long}PathName check for the existence all path's elements) A+
Eric Pouech wrote:
this should fix both cases, however, this may also step on Alexandre's
Indeed that fixed the GetLongPathNameA behaviour.
Thanks, Eric!
What can we do to get this patch applied by Alexandre? Can I help?
Cheers,
Felipe