Message205892
| 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 |
|