You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by db...@apache.org on 2007/11/05 00:24:37 UTC
svn commit: r591862 - in /xalan/c/trunk/src/xalanc/XSLT: ElemFallback.cpp
ElemFallback.hpp
Author: dbertoni
Date: Sun Nov 4 15:24:35 2007
New Revision: 591862
URL: http://svn.apache.org/viewvc?rev=591862&view=rev
Log:
Patch for Jira issue XALANC-633.
Modified:
xalan/c/trunk/src/xalanc/XSLT/ElemFallback.cpp
xalan/c/trunk/src/xalanc/XSLT/ElemFallback.hpp
Modified: xalan/c/trunk/src/xalanc/XSLT/ElemFallback.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/ElemFallback.cpp?rev=591862&r1=591861&r2=591862&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/ElemFallback.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/ElemFallback.cpp Sun Nov 4 15:24:35 2007
@@ -101,11 +101,31 @@
{
ElemTemplateElement::startElement(executionContext);
- return getFirstChildElem();
+ return beginExecuteChildren(executionContext);
}
+const ElemTemplateElement*
+ElemFallback::getFirstChildElemToExecute(
+ StylesheetExecutionContext& executionContext) const
+{
+ const int parentXSLToken =
+ getParentNodeElem()->getXSLToken();
+
+ if (parentXSLToken == StylesheetConstructionContext::ELEMNAME_FORWARD_COMPATIBLE ||
+ parentXSLToken == StylesheetConstructionContext::ELEMNAME_EXTENSION_CALL)
+ {
+ return ParentType::getFirstChildElemToExecute(executionContext);
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+
+
const ElemTemplateElement*
ElemFallback::getNextChildElemToExecute(StylesheetExecutionContext& /*executionContext*/,
const ElemTemplateElement* currentElem) const
Modified: xalan/c/trunk/src/xalanc/XSLT/ElemFallback.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/ElemFallback.hpp?rev=591862&r1=591861&r2=591862&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/ElemFallback.hpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/ElemFallback.hpp Sun Nov 4 15:24:35 2007
@@ -37,7 +37,10 @@
{
public:
- /**
+ typedef ElemTemplateElement ParentType;
+
+
+ /**
* Construct an object corresponding to an xsl:fallback element
*
* @param constructionContext context for construction of object
@@ -64,8 +67,12 @@
#if !defined(XALAN_RECURSIVE_STYLESHEET_EXECUTION)
virtual const ElemTemplateElement*
startElement(StylesheetExecutionContext& executionContext) const;
-
- virtual const ElemTemplateElement*
+
+ virtual const ElemTemplateElement*
+ getFirstChildElemToExecute(
+ StylesheetExecutionContext& executionContext) const;
+
+ virtual const ElemTemplateElement*
getNextChildElemToExecute(
StylesheetExecutionContext& executionContext,
const ElemTemplateElement* currentElem) const;
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org