dbertoni    01/12/20 17:30:42

  Modified:    c/src/XSLT StylesheetHandler.cpp
  Log:
  Check for apply-imports as a child of xsl:for-each.
  
  Revision  Changes    Path
  1.74      +21 -3     xml-xalan/c/src/XSLT/StylesheetHandler.cpp
  
  Index: StylesheetHandler.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xalan/c/src/XSLT/StylesheetHandler.cpp,v
  retrieving revision 1.73
  retrieving revision 1.74
  diff -u -r1.73 -r1.74
  --- StylesheetHandler.cpp     2001/11/26 23:23:05     1.73
  +++ StylesheetHandler.cpp     2001/12/21 01:30:42     1.74
  @@ -467,9 +467,27 @@
                                        break;
   
                                case Constants::ELEMNAME_APPLY_IMPORTS:
  -                                     elem = new 
ElemApplyImport(m_constructionContext,
  -                                                                             
         m_stylesheet,
  -                                                                             
         atts, lineNumber, columnNumber);
  +                                     {
  +                                             if (m_elemStack.empty() == true)
  +                                             {
  +                                                     
error("xsl:apply-imports is not allowed at this position in the stylesheet", 
locator);
  +                                             }
  +
  +                                             ElemTemplateElement* const      
theElement =
  +                                                             
m_elemStack.back();
  +                                             assert(theElement != 0);
  +
  +                                             const int       xslToken = 
theElement->getXSLToken();
  +
  +                                             if (xslToken == 
Constants::ELEMNAME_FOREACH)
  +                                             {
  +                                                     
error("xsl:apply-imports is not allowed at this position in the stylesheet", 
locator);
  +                                             }
  +
  +                                             elem = new 
ElemApplyImport(m_constructionContext,
  +                                                                             
                 m_stylesheet,
  +                                                                             
                 atts, lineNumber, columnNumber);
  +                                     }
                                        break;
             
                                case Constants::ELEMNAME_VALUEOF:
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to