Update of /var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib
In directory james.mmbase.org:/tmp/cvs-serv24520

Modified Files:
        NodeProviderHelper.java 
Log Message:
Added a warning about something which I think happened to me


See also: 
http://cvs.mmbase.org/viewcvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib


Index: NodeProviderHelper.java
===================================================================
RCS file: 
/var/cvs/applications/taglib/src/org/mmbase/bridge/jsp/taglib/NodeProviderHelper.java,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -b -r1.27 -r1.28
--- NodeProviderHelper.java     23 Feb 2008 16:00:44 -0000      1.27
+++ NodeProviderHelper.java     26 Jun 2008 13:58:00 -0000      1.28
@@ -25,7 +25,7 @@
 /**
  *
  * @author Michiel Meeuwissen
- * @version $Id: NodeProviderHelper.java,v 1.27 2008/02/23 16:00:44 michiel 
Exp $
+ * @version $Id: NodeProviderHelper.java,v 1.28 2008/06/26 13:58:00 michiel 
Exp $
  * @since MMBase-1.7
  */
 
@@ -135,6 +135,7 @@
         _Stack = (Stack<NodeChanger>) 
pageContext.getAttribute(STACK_ATTRIBUTE, PageContext.REQUEST_SCOPE);
         if (_Stack == null) {
             _Stack = new Stack<NodeChanger>();
+            pushed = 0;
             pageContext.setAttribute(STACK_ATTRIBUTE, _Stack, 
PageContext.REQUEST_SCOPE);
         }
         _Stack.push(node);
@@ -166,6 +167,12 @@
             PageContext pageContext = thisTag.getPageContext();
             if (_Stack.empty()) {
                 pageContext.removeAttribute(_NODE, PageContext.REQUEST_SCOPE);
+                if (pushed != 0) {
+                    // would otherwise come in infinite loop in doEndTag. But 
it should not have
+                    // happend in the first place
+                    log.warn("The _Stack was empty while there should still be 
things on it ", new Exception());
+                    pushed = 0;
+                }
                 _Stack = null;
             } else {
                 pageContext.setAttribute(_NODE, 
org.mmbase.util.Casting.wrap(_Stack.peek(), 
(org.mmbase.util.transformers.CharTransformer) 
pageContext.findAttribute(ContentTag.ESCAPER_KEY)), PageContext.REQUEST_SCOPE);
@@ -220,6 +227,7 @@
     public void doFinally () {
         node = null;
         _Stack = null;
+        pushed = 0;
         query = null;
     }
 }
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to