From ee3bf6f9773c0afbd494c657d253241f79d98044 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 4 Jun 2012 14:59:12 -0700 Subject: Handle more import exceptions involving xml. See http://bugs.python.org/issue14988 --- pym/portage/xml/metadata.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'pym/portage/xml/metadata.py') diff --git a/pym/portage/xml/metadata.py b/pym/portage/xml/metadata.py index 25f801a47..f820e5414 100644 --- a/pym/portage/xml/metadata.py +++ b/pym/portage/xml/metadata.py @@ -42,12 +42,18 @@ if sys.hexversion < 0x2070000 or \ else: try: import xml.etree.cElementTree as etree - except (ImportError, SystemError): + except (SystemExit, KeyboardInterrupt): + raise + except (ImportError, SystemError, RuntimeError, Exception): + # broken or missing xml support + # http://bugs.python.org/issue14988 import xml.etree.ElementTree as etree try: from xml.parsers.expat import ExpatError -except (ImportError, SystemError): +except (SystemExit, KeyboardInterrupt): + raise +except (ImportError, SystemError, RuntimeError, Exception): ExpatError = SyntaxError import re -- cgit v1.2.3-1-g7c22