cygpath -w converts relative paths to absolute windows paths

Thomas Wolff towo@towo.net
Wed Feb 8 22:42:00 GMT 2017


Hi Andrey,

Am 08.02.2017 um 11:54 schrieb Andrey Repin:
> Greetings, Thomas Wolff!
>
>> Am 07.02.2017 um 16:30 schrieb Andrey Repin:
>>> Greetings, Roger Qiu!
>>>
>>>> I've found that `cygpath --windows '../` will give back an absolute windows path.
>>>> ...
>>> ".." is a special path, that can't be safely converted.
>> How is the special meaning of ".." so much different in Windows than in
>> Cygwin/Linux/POSIX that it could not be mapped?
>> Things like dir .., cd .., type ..\sub\file all work comparably.
> Comparable? May be. Predictable?
> https://bugs.php.net/bug.php?id=73797
I don't know what __DIR__ is supposed to mean in PHP. Anyway, handling 
".." is not predictable even within Linux/Cygwin, you could see 
something like:
 > ls dir1/file
dir1/file
 > cd dir2
 > ls ../dir1/file
No such file or directory

(if dir2 is a link), or can have surprising effects of cd vs. cd -P.
I don't see how that should exclude ".." from being transformed to ".." 
by cygpath -w, even if the result may be somewhat unexpected in some 
border cases (which I haven't seen yet).
------
Thomas

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list