Only in XMLDocument.orig/: CVS diff -u XMLDocument.orig/Node.py XMLDocument/Node.py --- XMLDocument.orig/Node.py Tue Nov 16 16:09:22 1999 +++ XMLDocument/Node.py Fri Nov 19 19:25:29 1999 @@ -98,6 +98,8 @@ import string import copy +from xml.utils import escape + # Node classes # ------------ @@ -537,7 +539,7 @@ result.append('<%s' % self._name) for a in self.getAttributes(): if a.getNodeValue(): - result.append(' %s="%s"' % (a.getName(),a.getNodeValue())) + result.append(escape(' %s="%s"' % (a.getName(),a.getNodeValue()))) if deep and self._child_ids: result.append('>') for child in self: @@ -637,7 +639,7 @@ """ if RESPONSE is not None: RESPONSE.setHeader('content-type','text/xml') - return self._data + return escape(self._data) # DOM Methods # ----------- diff -u XMLDocument.orig/XMLDocument.py XMLDocument/XMLDocument.py --- XMLDocument.orig/XMLDocument.py Tue Nov 16 16:09:33 1999 +++ XMLDocument/XMLDocument.py Fri Nov 19 19:25:29 1999 @@ -179,6 +179,7 @@ try: self.parse(data) except Builder.ParseError, message: + get_transaction().abort() if REQUEST: return self.manage_editForm(self, REQUEST, toXML=data, manage_tabs_message='XML Parsing Error: %s' % message)