summaryrefslogtreecommitdiffstats
path: root/pym/portage_manifest.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-02-07 23:44:49 +0000
committerZac Medico <zmedico@gentoo.org>2007-02-07 23:44:49 +0000
commit65306df580fc319ce3478dc802a88b189155294d (patch)
tree63e838e7d7e6841787ac1566f02abb349f7b02e9 /pym/portage_manifest.py
parent62ec0d0477709f4ec7b5e7c1681436d55c2bd2f1 (diff)
downloadportage-65306df580fc319ce3478dc802a88b189155294d.tar.gz
portage-65306df580fc319ce3478dc802a88b189155294d.tar.bz2
portage-65306df580fc319ce3478dc802a88b189155294d.zip
Synchronize required hash code in all relevant places. (trunk r5924)
svn path=/main/branches/2.1.2/; revision=5925
Diffstat (limited to 'pym/portage_manifest.py')
-rw-r--r--pym/portage_manifest.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/pym/portage_manifest.py b/pym/portage_manifest.py
index 1266e33df..225638e50 100644
--- a/pym/portage_manifest.py
+++ b/pym/portage_manifest.py
@@ -459,6 +459,10 @@ class Manifest(object):
# repoman passes in an empty list, which implies that all distfiles
# are required.
requiredDistfiles = distlist.copy()
+ required_hash_types = set()
+ required_hash_types.add("size")
+ required_hash_types.add(portage_const.MANIFEST2_REQUIRED_HASH)
+
for f in distlist:
fname = os.path.join(self.distdir, f)
mystat = None
@@ -471,7 +475,8 @@ class Manifest(object):
(assumeDistHashesAlways and mystat is None) or \
(assumeDistHashesAlways and mystat is not None and \
len(distfilehashes[f]) == len(self.hashes) and \
- distfilehashes[f]["size"] == mystat.st_size)):
+ distfilehashes[f]["size"] == mystat.st_size)) and \
+ not required_hash_types.difference(distfilehashes[f]):
self.fhashdict["DIST"][f] = distfilehashes[f]
else:
try: