[Python-checkins] python/dist/src/Lib/xml/sax saxutils.py, 1.22, 1.23 (original) (raw)
loewis at users.sourceforge.net loewis at users.sourceforge.net
Wed May 5 22:22:45 EDT 2004
- Previous message: [Python-checkins] python/dist/src/Misc NEWS, 1.831.4.104, 1.831.4.105
- Next message: [Python-checkins] python/dist/src/Doc/whatsnew whatsnew24.tex, 1.41, 1.42
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Update of /cvsroot/python/python/dist/src/Lib/xml/sax In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11804/Lib/xml/sax
Modified Files: saxutils.py Log Message: Consider output encoding in XMLGenerator. Fixes #938076. Backported to 2.3.
Index: saxutils.py
RCS file: /cvsroot/python/python/dist/src/Lib/xml/sax/saxutils.py,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** saxutils.py 6 May 2004 02:04:21 -0000 1.22 --- saxutils.py 6 May 2004 02:22:43 -0000 1.23
*** 13,16 **** --- 13,25 ---- _StringTypes = [types.StringType]
See whether the xmlcharrefreplace error handler is
supported
- try:
from codecs import xmlcharrefreplace_errors
_error_handling = "xmlcharrefreplace"
del xmlcharrefreplace_errors
- except ImportError:
_error_handling = "strict"
- def __dict_replace(s, d): """Replace substrings of a string using a dictionary."""
*** 84,91 **** self._encoding = encoding
# ContentHandler methods
def startDocument(self):
! self._out.write('\n' % self._encoding)
--- 93,106 ---- self._encoding = encoding
def _write(self, text):
if isinstance(text, str):
self._out.write(text)
else:
self._out.write(text.encode(self._encoding, _error_handling))
# ContentHandler methods def startDocument(self):
! self._write('\n' % self._encoding)
*** 100,110 ****
def startElement(self, name, attrs):
! self._out.write('<' + name) for (name, value) in attrs.items(): ! self._out.write(' %s=%s' % (name, quoteattr(value))) ! self._out.write('>')
def endElement(self, name):
! self._out.write('</%s>' % name)
def startElementNS(self, name, qname, attrs):
--- 115,125 ----
def startElement(self, name, attrs):
! self._write('<' + name) for (name, value) in attrs.items(): ! self._write(' %s=%s' % (name, quoteattr(value))) ! self._write('>')
def endElement(self, name):
! self._write('</%s>' % name)
def startElementNS(self, name, qname, attrs):
*** 115,128 **** # else try to restore the original prefix from the namespace name = self._current_context[name[0]] + ":" + name[1] ! self._out.write('<' + name)
for pair in self._undeclared_ns_maps:
! self._out.write(' xmlns:%s="%s"' % pair) self._undeclared_ns_maps = []
for (name, value) in attrs.items():
name = self._current_context[name[0]] + ":" + name[1]
! self._out.write(' %s=%s' % (name, quoteattr(value))) ! self._out.write('>')
def endElementNS(self, name, qname):
--- 130,143 ---- # else try to restore the original prefix from the namespace name = self._current_context[name[0]] + ":" + name[1] ! self._write('<' + name)
for pair in self._undeclared_ns_maps:
! self._write(' xmlns:%s="%s"' % pair) self._undeclared_ns_maps = []
for (name, value) in attrs.items():
name = self._current_context[name[0]] + ":" + name[1]
! self._write(' %s=%s' % (name, quoteattr(value))) ! self._write('>')
def endElementNS(self, name, qname):
*** 131,144 **** else: name = self._current_context[name[0]] + ":" + name[1] ! self._out.write('</%s>' % name)
def characters(self, content):
! self._out.write(escape(content))
def ignorableWhitespace(self, content):
! self._out.write(content)
def processingInstruction(self, target, data):
! self._out.write('' % (target, data))
--- 146,159 ---- else: name = self._current_context[name[0]] + ":" + name[1] ! self._write('</%s>' % name)
def characters(self, content):
! self._write(escape(content))
def ignorableWhitespace(self, content):
! self._write(content)
def processingInstruction(self, target, data):
! self._write('' % (target, data))
- Previous message: [Python-checkins] python/dist/src/Misc NEWS, 1.831.4.104, 1.831.4.105
- Next message: [Python-checkins] python/dist/src/Doc/whatsnew whatsnew24.tex, 1.41, 1.42
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]