Fix repoman so that it works when the portage tree structure contains symlinks for...
authorZac Medico <zmedico@gentoo.org>
Tue, 23 May 2006 22:20:19 +0000 (22:20 -0000)
committerZac Medico <zmedico@gentoo.org>
Tue, 23 May 2006 22:20:19 +0000 (22:20 -0000)
svn path=/main/trunk/; revision=3405

bin/repoman

index a6bbd8fa2abaf67557a28522c6e42b7f9d67d416..83e8675fe2fb4439f987c99073b9053d2eed9c82 100755 (executable)
@@ -423,6 +423,13 @@ def have_profile_dir(path, maxdepth=3):
 portdir=None
 portdir_overlay=None
 mydir=os.getcwd()
+if "PWD" in os.environ and os.environ["PWD"] != mydir and \
+       os.path.realpath(os.environ["PWD"]) == mydir:
+       # getcwd() returns the canonical path but that makes it hard for repoman to
+       # orient itself if the user has symlinks in their portage tree structure.
+       # We use os.environ["PWD"], if available, to get the non-canonical path of
+       # the current working directory (from the shell).
+       mydir = os.environ["PWD"]
 if mydir[-1] != "/":
        mydir += "/"