summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-04-13 19:47:13 -0700
committerZac Medico <zmedico@gentoo.org>2012-04-13 19:47:13 -0700
commit4fd43df42a9705bdb7681f4d67fb49b8da24a5d9 (patch)
tree9fa331a0e6244ede37effc81c20b724eb6444c9b
parentef19d0fba35b1fff37257b70b3bd7c77b0b4e845 (diff)
downloadportage-4fd43df42a9705bdb7681f4d67fb49b8da24a5d9.tar.gz
portage-4fd43df42a9705bdb7681f4d67fb49b8da24a5d9.tar.bz2
portage-4fd43df42a9705bdb7681f4d67fb49b8da24a5d9.zip
Handle SystemError when importing xml libraries.
-rwxr-xr-xbin/repoman2
-rw-r--r--pym/portage/xml/metadata.py6
-rw-r--r--pym/repoman/herdbase.py4
3 files changed, 6 insertions, 6 deletions
diff --git a/bin/repoman b/bin/repoman
index 076d4042f..42539241e 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -45,7 +45,7 @@ portage.dep._internal_warnings = True
try:
import xml.etree.ElementTree
from xml.parsers.expat import ExpatError
-except ImportError:
+except (ImportError, SystemError):
msg = ["Please enable python's \"xml\" USE flag in order to use repoman."]
from portage.output import EOutput
out = EOutput()
diff --git a/pym/portage/xml/metadata.py b/pym/portage/xml/metadata.py
index bed6a1e55..25f801a47 100644
--- a/pym/portage/xml/metadata.py
+++ b/pym/portage/xml/metadata.py
@@ -1,4 +1,4 @@
-# Copyright 2010-2011 Gentoo Foundation
+# Copyright 2010-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
"""Provides an easy-to-use python interface to Gentoo's metadata.xml file.
@@ -42,12 +42,12 @@ if sys.hexversion < 0x2070000 or \
else:
try:
import xml.etree.cElementTree as etree
- except ImportError:
+ except (ImportError, SystemError):
import xml.etree.ElementTree as etree
try:
from xml.parsers.expat import ExpatError
-except ImportError:
+except (ImportError, SystemError):
ExpatError = SyntaxError
import re
diff --git a/pym/repoman/herdbase.py b/pym/repoman/herdbase.py
index 8ce36a704..91a32cb00 100644
--- a/pym/repoman/herdbase.py
+++ b/pym/repoman/herdbase.py
@@ -1,13 +1,13 @@
# -*- coding: utf-8 -*-
# repoman: Herd database analysis
-# Copyright 2010-2011 Gentoo Foundation
+# Copyright 2010-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 or later
import errno
import xml.etree.ElementTree
try:
from xml.parsers.expat import ExpatError
-except ImportError:
+except (ImportError, SystemError):
# This means that python is built without xml support.
# We tolerate global scope import failures for optional
# modules, so that ImportModulesTestCase can succeed (or