sboag 00/10/18 13:42:33
Modified: java/src/org/apache/xalan/templates TemplateList.java
TemplateSubPatternAssociation.java
Log:
Oops, forgot the mode test.
Revision Changes Path
1.14 +2 -1
xml-xalan/java/src/org/apache/xalan/templates/TemplateList.java
Index: TemplateList.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/templates/TemplateList.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- TemplateList.java 2000/10/18 04:36:43 1.13
+++ TemplateList.java 2000/10/18 20:42:32 1.14
@@ -476,7 +476,8 @@
xctxt.pushCurrentNodeAndExpression(targetNode, targetNode);
do
{
- if(head.m_stepPattern.execute(xctxt) != NodeTest.SCORE_NONE)
+ if((head.m_stepPattern.execute(xctxt) != NodeTest.SCORE_NONE)
+ && head.matchMode(mode))
{
if(quietConflictWarnings)
checkConflicts(head, xctxt, targetNode, mode);
1.3 +8 -0
xml-xalan/java/src/org/apache/xalan/templates/TemplateSubPatternAssociation.java
Index: TemplateSubPatternAssociation.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xalan/templates/TemplateSubPatternAssociation.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- TemplateSubPatternAssociation.java 2000/10/18 04:36:44 1.2
+++ TemplateSubPatternAssociation.java 2000/10/18 20:42:32 1.3
@@ -126,6 +126,14 @@
{
m_targetString = key;
}
+
+ /**
+ * Tell if two modes match according to the rules of XSLT.
+ */
+ boolean matchMode(QName m1)
+ {
+ return matchModes(m1, m_template.getMode());
+ }
/**
* Tell if two modes match according to the rules of XSLT.