changeset 4086:cc8a52229620

Fix accessing the repo through a symlink.
author Jun Inoue <jun.lambda@gmail.com>
date Thu, 15 Feb 2007 05:18:23 -0200
parents ef14fdb675da
children 587c6c652f82
files mercurial/util.py tests/test-symlink-root tests/test-symlink-root.out
diffstat 3 files changed, 13 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/util.py	Tue Feb 13 10:02:07 2007 -0200
+++ b/mercurial/util.py	Thu Feb 15 05:18:23 2007 -0200
@@ -363,6 +363,9 @@
             except OSError:
                 break
             if samestat(name_st, root_st):
+                if not rel:
+                    # name was actually the same as root (maybe a symlink)
+                    return ''
                 rel.reverse()
                 name = os.path.join(*rel)
                 audit_path(name)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-symlink-root	Thu Feb 15 05:18:23 2007 -0200
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+hg init a
+ln -s a link
+cd a
+echo foo > foo
+hg status
+hg status ../link
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-symlink-root.out	Thu Feb 15 05:18:23 2007 -0200
@@ -0,0 +1,2 @@
+? foo
+? foo