In minidom.py, class Document and a few other nodes
have hardcoded newlines ('\n') remaining, causing the
"newl" parameter to potentially produce a file with
mixed line endings, e.g. if newl is set to Windows line
endings ("\r\n" ).
A diff follows which fixes all instances of the problem
of which I'm aware.
*** /usr/lib/python2.4/xml/dom/minidom.py.orig Tue Aug
16 17:38:40 2005
--- /usr/lib/python2.4/xml/dom/minidom.py.new Tue Aug
16 17:38:40 2005
***************
*** 1286,1292 ****
writer.write(" [")
writer.write(self.internalSubset)
writer.write("]")
! writer.write(">\n")
class Entity(Identified, Node):
attributes = None
--- 1286,1292 ----
writer.write(" [")
writer.write(self.internalSubset)
writer.write("]")
! writer.write(">%s" % newl)
class Entity(Identified, Node):
attributes = None
***************
*** 1739,1747 ****
def writexml(self, writer, indent="",
addindent="", newl="",
encoding = None):
if encoding is None:
! writer.write('<?xml version="1.0" ?>\n')
else:
! writer.write('<?xml version="1.0"
encoding="%s"?>\n' % encoding)
for node in self.childNodes:
node.writexml(writer, indent, addindent,
newl)
--- 1739,1747 ----
def writexml(self, writer, indent="",
addindent="", newl="",
encoding = None):
if encoding is None:
! writer.write('<?xml version="1.0" ?>%s' %
newl)
else:
! writer.write('<?xml version="1.0"
encoding="%s"?>%s' % (encoding,newl))
for node in self.childNodes:
node.writexml(writer, indent, addindent,
newl)
|