sboag 00/12/19 21:04:17
Modified: java/src/org/apache/xalan/serialize FormatterToXML.java
Log:
Add space if find "?>" inside PI data.
Revision Changes Path
1.12 +19 -1
xml-xalan/java/src/org/apache/xalan/serialize/FormatterToXML.java
Index: FormatterToXML.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/serialize/FormatterToXML.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- FormatterToXML.java 2000/12/16 00:06:30 1.11
+++ FormatterToXML.java 2000/12/20 05:04:17 1.12
@@ -1039,7 +1039,25 @@
if (data.length() > 0 &&!Character.isSpaceChar(data.charAt(0)))
accum(' ');
- accum(data);
+ int indexOfQLT = data.indexOf("?>");
+ if(indexOfQLT >= 0)
+ {
+ // See XSLT spec on error recovery of "?>" in PIs.
+ if(indexOfQLT > 0)
+ {
+ accum(data.substring(0, indexOfQLT));
+ }
+ accum("? >"); // add space between.
+ if((indexOfQLT+2) < data.length())
+ {
+ accum(data.substring(indexOfQLT+2));
+ }
+ }
+ else
+ {
+ accum(data);
+ }
+
accum('?');
accum('>');