Ulrich Seidl ulrich.se...@muneda.com added the comment:
I would suggest adding an additional except branch to (at least) the following
functions of ElementTree.py:
* _encode,
* _escape_attrib, and
* _escape_cdata
The except branch could look like:
except (UnicodeDecodeError):
return
New submission from Ulrich Seidl ulrich.se...@muneda.com:
The following code leads to an UnicodeError in python 2.7 while it works fine
in 2.6 2.5:
# -*- coding: latin-1 -*-
import xml.etree.cElementTree as ElementTree
oDoc = ElementTree.fromstring(
'?xml version=1.0 encoding=iso-8859-1
Ulrich Seidl ulrich.se...@muneda.com added the comment:
Of course, if you use an unicode string it works and of course it would be easy
to switch to unicode for this demo code. Unfortunately, the affected
application is a little bit more complex and it is not that easy to switch to
unicode. I
Ulrich Seidl ulrich.se...@muneda.com added the comment:
Well, the output of the print is not that interesting as long as ElementTree is
able the restore the former attributes value when reading it in again. The
print was just used to illustrate that an UnicodeDecodeError appears. Think
about
Ulrich Seidl ulrich.se...@muneda.com added the comment:
The change set committed for 2.7 introduces another problem. At the beginning
of xmlrpclib.py, there is an explicit test for the availability of unicode:
try:
unicode
except NameError:
unicode = None # unicode support