Strange bzr handling of parent location from bzr branch when $HOME uses a symbolic link.

John Arbash Meinel john at arbash-meinel.com
Wed Dec 16 14:56:52 GMT 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

David Ingamells wrote:
...

> 
> Changing /etc/passwd to give the user's home as /volumes1/home/<user>
> and repeating the above commands (after a logout and login and of course
> removing the defective branch created above) solves the problem.
> 
> Maybe someone can check if this is an issue in the 2.0  series and if so
> submit the above as a bug (or let me know and I'll submit the bug)?


My guess is that the issue is that sometimes the branch under question
is accessed as "/home/user/foo" and other times as
"/volumes1/home/user/foo". And the parent pointer is being given as a
relative path.

So if we opened the branch as "/home/user/foo" and find the parent
location is "../../../data/id/repos" then when it is accessed as
"/volumes1/home/user/foo" the relative path breaks.

Feel free to submit a bug on this. I think the basic fixes are:

1) When computing a relative path, if it goes through '/' just use an
absolute path.

2) Make sure to use "normpath" at appropriate times. If we are going to
use it when dereferencing the parent pointer, then we should use it when
creating that parent pointer.

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkso9TQACgkQJdeBCYSNAAMJFwCgvu0BN0NBmLHtx12vnc96nxmr
vPoAoManAnZXMNECrpKpdDfi3qaZB8sw
=WHtp
-----END PGP SIGNATURE-----



More information about the bazaar mailing list