--- old/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java 2013-06-09 14:55:48.689509915 +0400 +++ new/jaxp/src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java 2013-06-09 14:55:48.581509917 +0400 @@ -955,6 +955,9 @@ if (Double.isNaN(d) || Double.isInfinite(d)) return(Double.toString(d)); + //Convert -0.0 to +0.0 other values remains the same + d = d + 0.0; + // Use the XPath formatter to ignore locales StringBuffer result = threadLocalStringBuffer.get(); result.setLength(0);