diff options
Diffstat (limited to 'pym/portage_manifest.py')
-rw-r--r-- | pym/portage_manifest.py | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/pym/portage_manifest.py b/pym/portage_manifest.py index 491074da9..50d061ecc 100644 --- a/pym/portage_manifest.py +++ b/pym/portage_manifest.py @@ -86,11 +86,16 @@ class Manifest(object): def _read(self): """ Parse Manifest file for this instance """ - if not os.path.exists(self.getFullname()): - return - fd = open(self.getFullname(), "r") - mylines = fd.readlines() - fd.close() + mylines = [] + try: + fd = open(self.getFullname(), "r") + mylines.extend(fd.readlines()) + fd.close() + except (OSError, IOError), e: + if e.errno == errno.ENOENT: + pass + else: + raise mylines.extend(self._readDigests().split("\n")) self._parseDigests(mylines, myhashdict=self.fhashdict) |