diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-08-26 12:46:35 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-08-26 12:46:35 -0700 |
commit | 9d71e68de000d94ac627e40a7e53e77d6e53ac9a (patch) | |
tree | f1138375a8ed997489e2ebbf12665f5d4eebb832 /bin/egencache | |
parent | 2efd2a76cc9a954e43651d616c273c573e5a95ac (diff) | |
download | portage-9d71e68de000d94ac627e40a7e53e77d6e53ac9a.tar.gz portage-9d71e68de000d94ac627e40a7e53e77d6e53ac9a.tar.bz2 portage-9d71e68de000d94ac627e40a7e53e77d6e53ac9a.zip |
Fix up error handling for egencache --update-use-local-desc.
Diffstat (limited to 'bin/egencache')
-rwxr-xr-x | bin/egencache | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/bin/egencache b/bin/egencache index 4bfb5be8f..515c6566d 100755 --- a/bin/egencache +++ b/bin/egencache @@ -347,9 +347,16 @@ class GenUseLocalDesc(object): level=logging.ERROR, noiselevel=-1) self.returncode |= 1 else: - usedict = parse_metadata_use(metadata) - for flag in sorted(usedict.keys()): - output.write('%s:%s - %s\n' % (cp, flag, usedict[flag])) + try: + usedict = parse_metadata_use(metadata) + except portage.exception.ParseError as e: + writemsg_level( + "ERROR: failed parsing %s/metadata.xml: %s\n" % (cp, e), + level=logging.ERROR, noiselevel=-1) + self.returncode |= 1 + else: + for flag in sorted(usedict.keys()): + output.write('%s:%s - %s\n' % (cp, flag, usedict[flag])) output.close() |