summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorNathan Phillip Brink <binki@gentoo.org>2011-10-07 05:00:46 +0000
committerZac Medico <zmedico@gentoo.org>2011-10-07 07:28:01 -0700
commit1cdf41d1b5c17ac593f0d61a90b8d2a7db6b494d (patch)
tree3476cf1f4d1bc215bf6d3d829a0e3df10faa8286 /bin
parentca7bef7821876791a26a5f9df6938f4c77fe571f (diff)
downloadportage-1cdf41d1b5c17ac593f0d61a90b8d2a7db6b494d.tar.gz
portage-1cdf41d1b5c17ac593f0d61a90b8d2a7db6b494d.tar.bz2
portage-1cdf41d1b5c17ac593f0d61a90b8d2a7db6b494d.zip
Don't do a split signed Manifest commit when no headers will change. Fixes bug #340475.
Diffstat (limited to 'bin')
-rwxr-xr-xbin/repoman15
1 files changed, 9 insertions, 6 deletions
diff --git a/bin/repoman b/bin/repoman
index 7943f54ef..6b6a1974e 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -2435,10 +2435,11 @@ else:
print("* aborting commit.")
sys.exit(1)
- if vcs in ('cvs', 'svn') and (myupdates or myremoved):
+ # Handle the case where committed files have keywords which
+ # will change and need a priming commit before the Manifest
+ # can be committed.
+ if (myupdates or myremoved) and myheaders:
myfiles = myupdates + myremoved
- if not myheaders and not sign_manifests:
- myfiles += mymanifests
fd, commitmessagefile = tempfile.mkstemp(".repoman.msg")
mymsg = os.fdopen(fd, "wb")
mymsg.write(_unicode_encode(commitmessage))
@@ -2539,7 +2540,6 @@ else:
portage.util.write_atomic(x, b''.join(mylines),
mode='wb')
- manifest_commit_required = True
if vcs in ('cvs', 'svn') and (myupdates or myremoved):
myfiles = myupdates + myremoved
for x in range(len(myfiles)-1, -1, -1):
@@ -2647,10 +2647,13 @@ else:
level=logging.ERROR, noiselevel=-1)
sys.exit(retval)
- if vcs in ['git', 'bzr', 'hg'] or manifest_commit_required or signed:
+ if True:
myfiles = mymanifests[:]
- if vcs in ['git', 'bzr', 'hg']:
+ # If there are no header (SVN/CVS keywords) changes in
+ # the files, this Manifest commit must include the
+ # other (yet uncommitted) files.
+ if not myheaders:
myfiles += myupdates
myfiles += myremoved
myfiles.sort()