morten 01/10/08 02:22:37
Modified: java/src/org/apache/xalan/xsltc/compiler Number.java
java/src/org/apache/xalan/xsltc/compiler/util
NodeCounterGenerator.java
Log:
Implemented a proper loadTranslet() method for the NodeCounterGenerator class.
The method was incorrectly names aloadTranslet(), and did not override the
desired method in the parent class. Also, the translet reference stored in
the '_translet' field of the compiled class' parent class (NodeCounter)
was not cast to AbstractTranslet before it was used.
PR: bugzilla 3410
Obtained from: n/a
Submitted by: [EMAIL PROTECTED]
Reviewed by: [EMAIL PROTECTED]
Revision Changes Path
1.5 +3 -2
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/Number.java
Index: Number.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/compiler/Number.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- Number.java 2001/08/27 09:07:19 1.4
+++ Number.java 2001/10/08 09:22:37 1.5
@@ -1,5 +1,5 @@
/*
- * @(#)$Id: Number.java,v 1.4 2001/08/27 09:07:19 morten Exp $
+ * @(#)$Id: Number.java,v 1.5 2001/10/08 09:22:37 morten Exp $
*
* The Apache Software License, Version 1.1
*
@@ -324,12 +324,13 @@
// Get NodeCounter._translet and store locally
local = matchGen.addLocalVariable("translet",
-
Util.getJCRefType("Lorg/apache/xalan/xsltc/Translet;"),
+ Util.getJCRefType(TRANSLET_SIG),
null, null);
field = cpg.addFieldref(NODE_COUNTER, "_translet",
"Lorg/apache/xalan/xsltc/Translet;");
il.append(ALOAD_0); // 'this' pointer on stack
il.append(new GETFIELD(field));
+ il.append(new CHECKCAST(cpg.addClass(TRANSLET_CLASS)));
il.append(new ASTORE(local.getIndex()));
nodeCounterGen.setTransletIndex(local.getIndex());
1.2 +2 -2
xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util/NodeCounterGenerator.java
Index: NodeCounterGenerator.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/compiler/util/NodeCounterGenerator.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- NodeCounterGenerator.java 2001/04/17 18:52:17 1.1
+++ NodeCounterGenerator.java 2001/10/08 09:22:37 1.2
@@ -1,5 +1,5 @@
/*
- * @(#)$Id: NodeCounterGenerator.java,v 1.1 2001/04/17 18:52:17 sboag Exp $
+ * @(#)$Id: NodeCounterGenerator.java,v 1.2 2001/10/08 09:22:37 morten Exp $
*
* The Apache Software License, Version 1.1
*
@@ -98,7 +98,7 @@
* matchFrom or matchCount.
* Overridden from ClassGenerator.
*/
- public Instruction aloadTranslet() {
+ public Instruction loadTranslet() {
return _aloadTranslet;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]