aboutsummaryrefslogtreecommitdiffstats
path: root/python/drv_libxml2.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/drv_libxml2.py')
-rw-r--r--python/drv_libxml2.py18
1 files changed, 10 insertions, 8 deletions
diff --git a/python/drv_libxml2.py b/python/drv_libxml2.py
index c2ec3e27..71b1c67d 100644
--- a/python/drv_libxml2.py
+++ b/python/drv_libxml2.py
@@ -44,8 +44,18 @@ if sys.version_info[0] < 3:
__author__ = codecs.unicode_escape_decode(__author__)[0]
StringTypes = (str, unicode)
+ # libxml2 returns strings as UTF8
+ _decoder = codecs.lookup("utf8")[1]
+ def _d(s):
+ if s is None:
+ return s
+ else:
+ return _decoder(s)[0]
else:
StringTypes = str
+ # s is Unicode `str` already
+ def _d(s):
+ return s
from xml.sax._exceptions import *
from xml.sax import xmlreader, saxutils
@@ -61,14 +71,6 @@ from xml.sax.handler import \
property_dom_node, \
property_xml_string
-# libxml2 returns strings as UTF8
-_decoder = codecs.lookup("utf8")[1]
-def _d(s):
- if s is None:
- return s
- else:
- return _decoder(s)[0]
-
try:
import libxml2
except ImportError: