Hi Glen,

Looks like you've put the namespace stack problem back in by restoring the original order of operations (call to clearFrame() before decrementing top). Am I missing something here? The problem I saw was that namespaces were pushed on the stack before the null value, so the null value had to be removed before calling clearFrame(). If you can tell me what went wrong when the order was changed perhaps I can suggest an alternative fix. Sorry I didn't try this out with the whole test suite myself, I'm hoping to get set up for full build this next weekend.

This whole business of pushing nulls on the stack as markers leaves me uncomfortable. I'd prefer using two stacks, one for the actual namespaces and one for the frames (as top of stack values for the namespace stack). It's a substantial change to make without a good reason, though.

- Dennis

[EMAIL PROTECTED] wrote:

gdaniels 2002/12/11 08:12:30

Modified: java/src/org/apache/axis/providers/java RPCProvider.java
java/src/org/apache/axis/utils NSStack.java
Log:
Tweak NSStack fix, and throw the unwrapped exception if deserializing
from within RPCProvider.


1.35 +3 -6 xml-axis/java/src/org/apache/axis/utils/NSStack.java
Index: NSStack.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/utils/NSStack.java,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -r1.34 -r1.35
--- NSStack.java 10 Dec 2002 17:22:03 -0000 1.34
+++ NSStack.java 11 Dec 2002 16:12:30 -0000 1.35
@@ -58,9 +58,6 @@
import org.apache.commons.logging.Log;
import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.Stack;
-import java.util.Iterator;
/**
* The abstraction this class provides is a push down stack of variable
@@ -79,7 +76,7 @@
* Accordingly, this stack is implemented as a single array, will null
* values used to indicate frame boundaries.
*
- * @author: James Snell
+ * @author James Snell
* @author Glen Daniels ([EMAIL PROTECTED])
* @author Sam Ruby ([EMAIL PROTECTED])
*/
@@ -118,9 +115,9 @@
* Remove the top frame from the stack.
*/
public void pop() {
- top--;
-
clearFrame();
+
+ top--;
if (top == 0) {
if (log.isTraceEnabled())




Reply via email to