summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Keating <jkeating@redhat.com>2010-07-06 16:33:29 -0700
committerJesse Keating <jkeating@redhat.com>2010-07-06 16:33:29 -0700
commiteacd2831afe51e593b6ee5213eb4b13400ec9804 (patch)
tree2e19641bf3cc20051c9682d78389773f1cb43837
parentd070549827d25e5c4aabc636a3315b3a22158911 (diff)
downloadfedora-packager-eacd2831afe51e593b6ee5213eb4b13400ec9804.tar.gz
fedora-packager-eacd2831afe51e593b6ee5213eb4b13400ec9804.tar.xz
fedora-packager-eacd2831afe51e593b6ee5213eb4b13400ec9804.zip
Don't write duplicate lines to sources
This can happen if somebody uses the "upload" target on the same file more than once.
-rw-r--r--src/pyfedpkg/__init__.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/pyfedpkg/__init__.py b/src/pyfedpkg/__init__.py
index c44ed7f..920c85e 100644
--- a/src/pyfedpkg/__init__.py
+++ b/src/pyfedpkg/__init__.py
@@ -1111,8 +1111,10 @@ class PackageModule:
# Decide to overwrite or append to sources:
if replace:
+ sources = []
sources_file = open('sources', 'w')
else:
+ sources = open('sources', 'r').readlines()
sources_file = open('sources', 'a')
# Will add new sources to .gitignore if they are not already there.
@@ -1124,7 +1126,8 @@ class PackageModule:
file_hash = _hash_file(f, self.lookasidehash)
log.info("Uploading: %s %s" % (file_hash, f))
file_basename = os.path.basename(f)
- sources_file.write("%s %s\n" % (file_hash, file_basename))
+ if not "%s %s\n" % (file_hash, file_basename) in sources:
+ sources_file.write("%s %s\n" % (file_hash, file_basename))
# Add this file to .gitignore if it's not already there:
gitignore.add(file_basename)