# HG changeset patch # User asaha # Date 1333123569 25200 # Node ID 3f8b55667a6f9d093fcaf4a70c784c426b00685b # Parent d252e8511aeee5f402b72a4a70fa6e3c0ed9bceb# Parent eb1f8bea2e93a498a9b9f42d33efad564d960407 Merge diff -r d252e8511aee -r 3f8b55667a6f .hgtags --- a/.hgtags Fri Mar 23 10:45:45 2012 -0700 +++ b/.hgtags Fri Mar 30 09:06:09 2012 -0700 @@ -163,3 +163,4 @@ 36490d49683f7be9d8fbbe1f8eefa1fe9fe550fa jdk7u4-b15 5c881231f1161fbc4fe86383ce59dd6a1bbe4f8e jdk7u4-b16 77a453ae863fee408035c8986f7e3bb22b7252cb jdk7u4-b17 +02400887d8c82eab88933df7167d1f8ab826113f jdk7u4-b18 diff -r d252e8511aee -r 3f8b55667a6f src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java --- a/src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java Fri Mar 23 10:45:45 2012 -0700 +++ b/src/com/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet.java Fri Mar 30 09:06:09 2012 -0700 @@ -67,6 +67,8 @@ public String _encoding = "UTF-8"; public boolean _omitHeader = false; public String _standalone = null; + //see OutputPropertiesFactory.ORACLE_IS_STANDALONE + public boolean _isStandalone = false; public String _doctypePublic = null; public String _doctypeSystem = null; public boolean _indent = false; @@ -671,6 +673,7 @@ if (_doctypeSystem != null) { handler.setDoctype(_doctypeSystem, _doctypePublic); } + handler.setIsStandalone(_isStandalone); } else if (_method.equals("html")) { handler.setIndent(_indent); @@ -693,6 +696,7 @@ } handler.setIndent(_indent); handler.setDoctype(_doctypeSystem, _doctypePublic); + handler.setIsStandalone(_isStandalone); } } diff -r d252e8511aee -r 3f8b55667a6f src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java --- a/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java Fri Mar 23 10:45:45 2012 -0700 +++ b/src/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerImpl.java Fri Mar 30 09:06:09 2012 -0700 @@ -990,6 +990,11 @@ } } } + else if (name.equals(OutputPropertiesFactory.ORACLE_IS_STANDALONE)) { + if (value != null && value.equals("yes")) { + translet._isStandalone = true; + } + } } } @@ -1049,6 +1054,11 @@ handler.setIndentAmount(Integer.parseInt(value)); } } + else if (name.equals(OutputPropertiesFactory.ORACLE_IS_STANDALONE)) { + if (value != null && value.equals("yes")) { + handler.setIsStandalone(true); + } + } else if (name.equals(OutputKeys.CDATA_SECTION_ELEMENTS)) { if (value != null) { StringTokenizer e = new StringTokenizer(value); @@ -1162,6 +1172,7 @@ name.equals(OutputKeys.OMIT_XML_DECLARATION) || name.equals(OutputKeys.STANDALONE) || name.equals(OutputKeys.VERSION) || + name.equals(OutputPropertiesFactory.ORACLE_IS_STANDALONE) || name.charAt(0) == '{'); } diff -r d252e8511aee -r 3f8b55667a6f src/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java --- a/src/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java Fri Mar 23 10:45:45 2012 -0700 +++ b/src/com/sun/org/apache/xml/internal/serializer/EmptySerializer.java Fri Mar 30 09:06:09 2012 -0700 @@ -179,6 +179,13 @@ aMethodIsCalled(); } /** + * @see SerializationHandler#setIsStandalone(boolean) + */ + public void setIsStandalone(boolean isStandalone) + { + aMethodIsCalled(); + } + /** * @see SerializationHandler#setOutputFormat(java.util.Properties) */ public void setOutputFormat(Properties format) diff -r d252e8511aee -r 3f8b55667a6f src/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java --- a/src/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java Fri Mar 23 10:45:45 2012 -0700 +++ b/src/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java Fri Mar 30 09:06:09 2012 -0700 @@ -175,6 +175,26 @@ public static final int S_BUILTIN_OLD_EXTENSIONS_UNIVERSAL_LEN = S_BUILTIN_OLD_EXTENSIONS_UNIVERSAL.length(); + /** + * This non-standard, Oracle-impl only property key is used as if OutputKeys.STANDALONE is specified but + * without writing it out in the declaration; It can be used to reverse the change by Xalan patch 1495. + * Since Xalan patch 1495 can cause incompatible behavior, this property is add for application to neutralize + * the effect of Xalan patch 1495 + */ + /** + *
Is Standalone
+ * + *yes
to indicate the output is intended to be used as standalone
+ * no
has no effect.
+ *