summaryrefslogtreecommitdiffstats
path: root/bin/repoman
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-02-22 13:09:55 +0000
committerZac Medico <zmedico@gentoo.org>2007-02-22 13:09:55 +0000
commitea4ab01794f3c1faab20966a16af990aaa3c7510 (patch)
tree3b7a0d20e23d62d7c426717164eef034b76b3b28 /bin/repoman
parentb252a04261a0c221ba73cb60254c015131633d34 (diff)
downloadportage-ea4ab01794f3c1faab20966a16af990aaa3c7510.tar.gz
portage-ea4ab01794f3c1faab20966a16af990aaa3c7510.tar.bz2
portage-ea4ab01794f3c1faab20966a16af990aaa3c7510.zip
Fix broken file list handling for FEATUES=sign when only the Manifest has changed.
svn path=/main/trunk/; revision=6035
Diffstat (limited to 'bin/repoman')
-rwxr-xr-xbin/repoman6
1 files changed, 6 insertions, 0 deletions
diff --git a/bin/repoman b/bin/repoman
index b599f9111..7006620b0 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -1551,6 +1551,7 @@ else:
# Manifests need to be regenerated after all other commits, so don't commit
# them now even if they have changed.
+ mymanifests = [f for f in mychanged if "Manifest" == os.path.basename(f)]
mychanged = [f for f in mychanged if "Manifest" != os.path.basename(f)]
myupdates=mychanged+mynew
myheaders=[]
@@ -1717,6 +1718,7 @@ else:
signed = False
if "sign" in repoman_settings.features:
signed = True
+ myfiles = myupdates + myremoved + mymanifests
try:
if repolevel==3: # In a package dir
repoman_settings["O"] = "."
@@ -1725,6 +1727,8 @@ else:
mydone=[]
for x in myfiles:
xs=x.split("/")
+ if len(xs) < 4-repolevel:
+ continue
if xs[0]==".":
xs=xs[1:]
if xs[0] in mydone:
@@ -1737,6 +1741,8 @@ else:
mydone=[]
for x in myfiles:
xs=x.split("/")
+ if len(xs) < 4-repolevel:
+ continue
if xs[0]==".":
xs=xs[1:]
if "/".join(xs[:2]) in mydone: