From cfe7af2b1da9357d5bfaa531f288ef0ac074184c Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 2 Sep 2011 08:45:43 -0700 Subject: xml/metadata: handle py 2.6 cElementTree incompat --- pym/portage/xml/metadata.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'pym/portage/xml') 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 -- cgit v1.2.3-1-g7c22