summaryrefslogtreecommitdiffstats
path: root/pym/portage/xml
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-09-02 08:45:43 -0700
committerZac Medico <zmedico@gentoo.org>2011-09-02 08:45:43 -0700
commitcfe7af2b1da9357d5bfaa531f288ef0ac074184c (patch)
treed66734891ed4335ce3f73d74af1da80854fd9be8 /pym/portage/xml
parentd318bcce356b55d481e78b8cf511d6698f67eee5 (diff)
downloadportage-cfe7af2b1da9357d5bfaa531f288ef0ac074184c.tar.gz
portage-cfe7af2b1da9357d5bfaa531f288ef0ac074184c.tar.bz2
portage-cfe7af2b1da9357d5bfaa531f288ef0ac074184c.zip
xml/metadata: handle py 2.6 cElementTree incompat
Diffstat (limited to 'pym/portage/xml')
-rw-r--r--pym/portage/xml/metadata.py15
1 files changed, 12 insertions, 3 deletions
diff --git a/pym/portage/xml/metadata.py b/pym/portage/xml/metadata.py
index 9e1886927..3513fff6d 100644
--- a/pym/portage/xml/metadata.py
+++ b/pym/portage/xml/metadata.py
@@ -30,10 +30,19 @@
__all__ = ('MetaDataXML',)
-try:
- import xml.etree.cElementTree as etree
-except ImportError:
+import sys
+
+if sys.hexversion < 0x2070000:
+ # Our _MetadataTreeBuilder usage is incompatible with
+ # cElementTree in Python 2.6:
+ # File "/usr/lib/python2.6/xml/etree/ElementTree.py", line 644, in findall
+ # assert self._root is not None
import xml.etree.ElementTree as etree
+else:
+ try:
+ import xml.etree.cElementTree as etree
+ except ImportError:
+ import xml.etree.ElementTree as etree
import re
import xml.etree.ElementTree