diff options
author | stooke <unknown> | 2019-06-05 04:08:13 +0100 |
---|---|---|
committer | bell-sw <liberica@bell-sw.com> | 2019-07-22 19:22:03 +0300 |
commit | 50f2821a2f67e0dca0141ad283fff39f88e1d043 (patch) | |
tree | 59ad7a877c3e677fd235fc238e85dfda71cf7ab4 | |
parent | 463072f9a4572e30317c21144ab7aa6cd7f6fa5a (diff) | |
download | jdk8u_jaxp-50f2821a2f67e0dca0141ad283fff39f88e1d043.tar.gz |
8193830: Xalan Update: Xalan Java 2.7.2
Reviewed-by: lancea, clanger, andrew
8 files changed, 21 insertions, 25 deletions
diff --git a/THIRD_PARTY_README b/THIRD_PARTY_README index a091d90..814e5f2 100644 --- a/THIRD_PARTY_README +++ b/THIRD_PARTY_README @@ -2898,7 +2898,7 @@ included with JRE 8, JDK 8, and OpenJDK 8. Apache Jakarta BCEL 5.1 Apache Jakarta Regexp 1.4 Apache Santuario XML Security for Java 1.5.4 - Apache Xalan-Java 2.7.1 + Apache Xalan-Java 2.7.2 Apache Xerces Java 2.10.0 Apache XML Resolver 1.1 diff --git a/src/com/sun/org/apache/xalan/internal/Version.java b/src/com/sun/org/apache/xalan/internal/Version.java index be9c19d..ff778c8 100644 --- a/src/com/sun/org/apache/xalan/internal/Version.java +++ b/src/com/sun/org/apache/xalan/internal/Version.java @@ -121,7 +121,7 @@ public class Version */ public static int getMaintenanceVersionNum() { - return 0; + return 2; } /** diff --git a/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java b/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java index 8cad427..6e91b75 100644 --- a/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java +++ b/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java @@ -100,20 +100,19 @@ final class FunctionAvailableCall extends FunctionCall { * the specified method is found in the specifed class. */ private boolean hasMethods() { - LiteralExpr arg = (LiteralExpr)_arg; // Get the class name from the namespace uri String className = getClassNameFromUri(_namespaceOfFunct); // Get the method name from the argument to function-available String methodName = null; - int colonIndex = _nameOfFunct.indexOf(":"); + int colonIndex = _nameOfFunct.indexOf(':'); if (colonIndex > 0) { String functionName = _nameOfFunct.substring(colonIndex+1); int lastDotIndex = functionName.lastIndexOf('.'); if (lastDotIndex > 0) { methodName = functionName.substring(lastDotIndex+1); - if (className != null && !className.equals("")) + if (className != null && className.length() != 0) className = className + "." + functionName.substring(0, lastDotIndex); else className = functionName.substring(0, lastDotIndex); diff --git a/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java b/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java index f7309e5..9b40267 100644 --- a/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java +++ b/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java @@ -65,7 +65,7 @@ final class Sort extends Instruction implements Closure { private AttributeValue _order; private AttributeValue _caseOrder; private AttributeValue _dataType; - private String _lang; // bug! see 26869 + private AttributeValue _lang; // bug! see 26869, see XALANJ-2546 private String _className = null; private ArrayList<VariableRefBase> _closureVars = null; @@ -153,13 +153,11 @@ final class Sort extends Instruction implements Closure { } _dataType = AttributeValue.create(this, val, parser); - _lang = getAttribute("lang"); // bug! see 26869 - // val = getAttribute("lang"); - // _lang = AttributeValue.create(this, val, parser); + val = getAttribute("lang"); + _lang = AttributeValue.create(this, val, parser); // Get the case order; default is language dependant - val = getAttribute("case-order"); - _caseOrder = AttributeValue.create(this, val, parser); - + val = getAttribute("case-order"); + _caseOrder = AttributeValue.create(this, val, parser); } /** @@ -178,6 +176,7 @@ final class Sort extends Instruction implements Closure { _order.typeCheck(stable); _caseOrder.typeCheck(stable); _dataType.typeCheck(stable); + _lang.typeCheck(stable); return Type.Void; } @@ -195,16 +194,14 @@ final class Sort extends Instruction implements Closure { _order.translate(classGen, methodGen); } - public void translateCaseOrder(ClassGenerator classGen, + public void translateCaseOrder(ClassGenerator classGen, MethodGenerator methodGen) { - _caseOrder.translate(classGen, methodGen); + _caseOrder.translate(classGen, methodGen); } public void translateLang(ClassGenerator classGen, MethodGenerator methodGen) { - final ConstantPoolGen cpg = classGen.getConstantPool(); - final InstructionList il = methodGen.getInstructionList(); - il.append(new PUSH(cpg, _lang)); // bug! see 26869 + _lang.translate(classGen, methodGen); } /** diff --git a/src/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java b/src/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java index cb50cf5..e92574c 100644 --- a/src/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java +++ b/src/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java @@ -570,7 +570,7 @@ public class AdaptiveResultTreeImpl extends SimpleResultTreeImpl if (_openElementName != null) { int index; - if ((index =_openElementName.indexOf(":")) < 0) + if ((index =_openElementName.indexOf(':')) < 0) _dom.startElement(null, _openElementName, _openElementName, _attributes); else { String uri =_dom.getNamespaceURI(_openElementName.substring(0,index)); @@ -682,7 +682,7 @@ public class AdaptiveResultTreeImpl extends SimpleResultTreeImpl public void addAttribute(String qName, String value) { // "prefix:localpart" or "localpart" - int colonpos = qName.indexOf(":"); + int colonpos = qName.indexOf(':'); String uri = EMPTY_STRING; String localName = qName; if (colonpos >0) diff --git a/src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java b/src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java index 804b154..57feec3 100644 --- a/src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java +++ b/src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java @@ -1421,8 +1421,8 @@ public final class BasisLibrary { * This method should only be invoked if the name attribute is an AVT */ public static void checkAttribQName(String name) { - final int firstOccur = name.indexOf(":"); - final int lastOccur = name.lastIndexOf(":"); + final int firstOccur = name.indexOf(':'); + final int lastOccur = name.lastIndexOf(':'); final String localName = name.substring(lastOccur + 1); if (firstOccur > 0) { diff --git a/src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java b/src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java index 58fae69..7ed1d8b 100644 --- a/src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java +++ b/src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java @@ -359,7 +359,7 @@ public abstract class DTMDefaultBase implements DTM while (low <= high) { - int mid = (low + high) / 2; + int mid = (low + high) >>> 1; int c = list[mid]; if (c > value) diff --git a/src/com/sun/org/apache/xml/internal/utils/NodeVector.java b/src/com/sun/org/apache/xml/internal/utils/NodeVector.java index 8bba6d5..fd1171d 100644 --- a/src/com/sun/org/apache/xml/internal/utils/NodeVector.java +++ b/src/com/sun/org/apache/xml/internal/utils/NodeVector.java @@ -670,9 +670,9 @@ public class NodeVector implements Serializable, Cloneable /* * Pick a pivot and move it out of the way */ - int pivot = a[(lo + hi) / 2]; - - a[(lo + hi) / 2] = a[hi]; + int mid = (lo + hi) >>> 1; + int pivot = a[mid]; + a[mid] = a[hi]; a[hi] = pivot; while (lo < hi) |