summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-09-14 09:08:19 -0700
committerZac Medico <zmedico@gentoo.org>2011-09-14 09:08:19 -0700
commitc1eb8e75ba4cb192607a896ad7b72bf8b525740a (patch)
tree8a791a4c8ccac7030ea88d2d52fdbe328dba6e8e
parent05f5e7f26b92f534ffa0be28ec0a4ff58c0b0d6b (diff)
downloadportage-c1eb8e75ba4cb192607a896ad7b72bf8b525740a.tar.gz
portage-c1eb8e75ba4cb192607a896ad7b72bf8b525740a.tar.bz2
portage-c1eb8e75ba4cb192607a896ad7b72bf8b525740a.zip
repoman: fix KeyError from digestgen with symlink
-rwxr-xr-xbin/repoman7
1 files changed, 7 insertions, 0 deletions
diff --git a/bin/repoman b/bin/repoman
index e0cdf6ed4..2180f641a 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -648,6 +648,13 @@ for x in range(0, repolevel - 1):
repodir = os.path.dirname(repodir)
repodir = os.path.realpath(repodir)
+# Make startdir relative to the cannonical repodir, so that we can pass
+# it to digestgen and it won't have to be cannonicalized again.
+if repolevel == 1:
+ startdir = repodir
+else:
+ startdir = os.path.join(repodir, *startdir.split(os.sep)[-2-repolevel+3:])
+
def caterror(mycat):
err(mycat+" is not an official category. Skipping QA checks in this directory.\nPlease ensure that you add "+catdir+" to "+repodir+"/profiles/categories\nif it is a new category.")