summaryrefslogtreecommitdiffstats
path: root/pym/portage_manifest.py
diff options
context:
space:
mode:
Diffstat (limited to 'pym/portage_manifest.py')
-rw-r--r--pym/portage_manifest.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/pym/portage_manifest.py b/pym/portage_manifest.py
index 8cfb43a82..073f7de56 100644
--- a/pym/portage_manifest.py
+++ b/pym/portage_manifest.py
@@ -389,6 +389,19 @@ class Manifest(object):
for f in self._getCpvDistfiles(cpv):
self.updateFileHashes("DIST", f, ignoreMissingFiles=ignoreMissingFiles)
+ def updateHashesGuessType(self, fname, *args, **kwargs):
+ """ Regenerate hashes for the given file (guesses the type and then
+ calls updateFileHashes)."""
+ mytype = self.guessType(fname)
+ if mytype == "AUX":
+ fname = fname[len("files" + os.sep):]
+ elif mytype is None:
+ return
+ myrealtype = self.findFile(fname)
+ if myrealtype is not None:
+ mytype = myrealtype
+ return self.updateFileHashes(mytype, fname, *args, **kwargs)
+
def getFileData(self, ftype, fname, key):
""" Return the value of a specific (type,filename,key) triple, mainly useful
to get the size for distfiles."""