This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author vajrasky
Recipients gvanrossum, neologix, pitrou, serhiy.storchaka, vajrasky
Date 2013-12-11.08:22:55
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1386750176.75.0.373702338596.issue19717@psf.upfronthosting.co.za>
In-reply-to
Content
Here is the patch with Windows support. I notice there is difference regarding resolving symbolic link with parent dir (linkA/..) between Posix and Windows.

On Windows, if linkY points to dirB, 'dirA\linkY\..' resolves to 'dirA' without resolving linkY first. It means, Windows resolves parent dir first before symbolic link.

C:\Users\vajrasky\Code\playplay\pycode>mkdir dirA

C:\Users\vajrasky\Code\playplay\pycode>mkdir dirB

C:\Users\vajrasky\Code\playplay\pycode>cd dirA

C:\Users\vajrasky\Code\playplay\pycode\dirA>mklink /D linkC ..\dirB
symbolic link created for linkC <<===>> ..\dirB

C:\Users\vajrasky\Code\playplay\pycode\dirA>cd ..\

C:\Users\vajrasky\Code\playplay\pycode>cd dirA\linkC\..

C:\Users\vajrasky\Code\playplay\pycode\dirA>

But on Posix, if linkY points to dirB, 'dirA\linkY\..' resolves to 'dirB\..' then to the parent dir of dirB. It means, Posix resolves symbolic link first before parent dir.

$ mkdir dirA
$ mkdir dirB
$ cd dirA
$ ln -s ../dirB linkC
$ cd ..
$ ls dirA/linkC/..
dirA    dirB
History
Date User Action Args
2013-12-11 08:22:56vajraskysetrecipients: + vajrasky, gvanrossum, pitrou, neologix, serhiy.storchaka
2013-12-11 08:22:56vajraskysetmessageid: <1386750176.75.0.373702338596.issue19717@psf.upfronthosting.co.za>
2013-12-11 08:22:56vajraskylinkissue19717 messages
2013-12-11 08:22:56vajraskycreate