You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by am...@apache.org on 2007/07/26 14:39:35 UTC

svn commit: r559795 - /xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSWildcard.cpp

Author: amassari
Date: Thu Jul 26 05:39:35 2007
New Revision: 559795

URL: http://svn.apache.org/viewvc?view=rev&rev=559795
Log:
XSWildcard was always getting a 'strict' processContent when the namespace list contained more than 2 elements

Modified:
    xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSWildcard.cpp

Modified: xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSWildcard.cpp
URL: http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSWildcard.cpp?view=diff&rev=559795&r1=559794&r2=559795
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSWildcard.cpp (original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSWildcard.cpp Thu Jul 26 05:39:35 2007
@@ -116,7 +116,9 @@
     else if (nodeType == ContentSpecNode::Any_NS_Choice)
     {
         fConstraintType = NSCONSTRAINT_DERIVATION_LIST;
-        ContentSpecNode::NodeTypes anyType = elmWildCard->getFirst()->getType();
+        // inspect the second child, not the first one, as the first could hold another Any_NS_Choice wrapper
+        // if the choices are more than 2, while the second child is always a leaf node
+        ContentSpecNode::NodeTypes anyType = elmWildCard->getSecond()->getType();
 
         if (anyType == ContentSpecNode::Any_NS_Lax)
             fProcessContents = PC_LAX;



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xerces.apache.org
For additional commands, e-mail: commits-help@xerces.apache.org