On Nov 29 15:00, David Macek wrote:
> On 26. 11. 2015 12:53, Corinna Vinschen wrote:
> > On Nov 24 20:51, David Macek wrote:
> >> My test command is `touch 1 && ln -s 1 2`, then I clean up by `rm 1 2`. 
> >> Now the results:
> >>
> >> in /bin/: relative
> >> in /: absolute
> >> in ~/ (/cygdrive/c/Users/username/): relative
> >> in /cygdrive/w/: absolute
> >>
> >> Note that W: is a permasubst (created using `DOSDevices` in registry), 
> >> which would explain the different behaviour (but not excuse it :), but I 
> >> don't see why / is also special. Even if only one from the link pair 
> >> (target or source) is in a relative-symlink-unsupporting path, I get an 
> >> absolute path.
> >>
> >> Can you confirm?
> > 
> > Yes, thanks for this part of the analysis.  There was a typo in the
> > code checking the relative paths.  The check for a drive colon in the
> > pathname used a wrong offset into the path string, which ultimately
> > always created an absolut path to the target if the path of the
> > target was in a drive's root dir or one level below that.
> > 
> > I fixed that in the repo and created a new developer snapshot for
> > testing: https://cygwin.com/snapshots/  Please give it a try.
> 
> I get relative symlinks in all of my test cases now. Thanks.

Cool, thanks for testing.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: pgpc8DOv0sNpl.pgp
Description: PGP signature

Reply via email to