svn commit: r1165488 - in /xalan/c/trunk/src/xalanc/XSLT: KeyTable.cpp KeyTable.hpp
[email protected] Tue, 06 Sep 2011 03:02:29 -0000
| Newsgroups | gmane.text.xml.xalan.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: shathaway
Date: Tue Sep 6 03:02:28 2011
New Revision: 1165488
URL: http://svn.apache.org/viewvc?rev=1165488&view=rev
Log:
JIRA [XALANC-701] Update: Fix on bad XALAN-675 patch -- XSLT/KeyTable issue
Modified:
xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp
xalan/c/trunk/src/xalanc/XSLT/KeyTable.hpp
Modified: xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp?rev=1165488&r1=1165487&r2=1165488&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp Tue Sep 6 03:02:28 2011
@@ -66,6 +66,8 @@ KeyTable::KeyTable(
{
XalanNode* pos = startNode;
+ m_allKeys=keyDeclarations;
+
const KeyDeclarationVectorType::size_type nDeclarations =
keyDeclarations.size();
@@ -253,6 +255,17 @@ KeyTable::getNodeSetByKey(
return &s_dummyList;
}
}
+ else
+ {
+ size_type nDeclarations=m_allKeys.size();
+ for (KeyDeclarationVectorType::size_type i = 0; i < nDeclarations; ++i)
+ {
+ if (*m_allKeys[i].getQName()==qname)
+ {
+ return &s_dummyList;
+ }
+ }
+ }
return 0;
}
Modified: xalan/c/trunk/src/xalanc/XSLT/KeyTable.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/KeyTable.hpp?rev=1165488&r1=1165487&r2=1165488&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/KeyTable.hpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/KeyTable.hpp Tue Sep 6 03:02:28 2011
@@ -152,6 +152,8 @@ private:
KeysMapType m_keys;
static const MutableNodeRefList s_dummyList;
+
+ KeyDeclarationVectorType m_allKeys;
};