diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-12-11 23:26:05 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-12-11 23:26:05 +0000 |
commit | 5b3135413d200e58e602a74a6816e48380e53433 (patch) | |
tree | 05bd527b571cfbfba23f627f64fea576bc8af738 /bin | |
parent | d19cc80ef4bf8b6d6ec7b89b75f2a7a77dfab94c (diff) | |
download | portage-5b3135413d200e58e602a74a6816e48380e53433.tar.gz portage-5b3135413d200e58e602a74a6816e48380e53433.tar.bz2 portage-5b3135413d200e58e602a74a6816e48380e53433.zip |
Instead of calling sys.exit when a ParseError occurs in the config
constructor, raise a ParseError and make emerge and portageq handle
the error. This way consumers of the portage api can handle the
ParseError rather than have their application exit. Thanks to lxnay
for reporting.
svn path=/main/trunk/; revision=8884
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/emerge | 5 | ||||
-rwxr-xr-x | bin/portageq | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/bin/emerge b/bin/emerge index 5901c2379..1ef575e13 100755 --- a/bin/emerge +++ b/bin/emerge @@ -13,10 +13,13 @@ except ImportError: if __name__ == "__main__": import sys - from portage.exception import PermissionDenied + from portage.exception import ParseError, PermissionDenied try: retval = _emerge.emerge_main() except PermissionDenied, e: sys.stderr.write("Permission denied: '%s'\n" % str(e)) sys.exit(e.errno) + except ParseError, e: + sys.stderr.write("%s\n" % str(e)) + sys.exit(1) sys.exit(retval) diff --git a/bin/portageq b/bin/portageq index 0b7eab6fe..972a38392 100755 --- a/bin/portageq +++ b/bin/portageq @@ -459,6 +459,9 @@ def main(): except portage.exception.PermissionDenied, e: sys.stderr.write("Permission denied: '%s'\n" % str(e)) sys.exit(e.errno) + except portage.exception.ParseError, e: + sys.stderr.write("%s\n" % str(e)) + sys.exit(1) except ValueError, e: if not e.args or \ not hasattr(e.args[0], "__len__") or \ |