fixed: the exception for if-index in pattern (when caching is used)

git-svn-id: svn://ttmath.org/publicrep/ezc/trunk@332 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
Tomasz Sowa 2011-01-23 14:16:49 +00:00
parent fd2194623a
commit 3c85fa1a75
2 changed files with 17 additions and 17 deletions

View File

@ -36,8 +36,8 @@
*/
#ifndef headerfile_ezc_info
#define headerfile_ezc_info
#ifndef headerfile_ezc_funinfo
#define headerfile_ezc_funinfo
#include <vector>

View File

@ -217,27 +217,27 @@ private:
{
typename Functions<StreamType>::Function * ezc_fun;
for(size_t f = 0; f < item.functions.size() ; ++f)
// one exception (if_index is putting its argument on the functions stack)
if( item.type != Item::item_ifindex )
{
if( fun.Find(item.functions[f].name, &ezc_fun) )
for(size_t f=0; f < item.functions.size() ; ++f)
{
item.functions[f].fun_cache = ezc_fun;
}
else
{
item.functions[f].fun_cache = 0;
if( fun.Find(item.functions[f].name, &ezc_fun) )
{
item.functions[f].fun_cache = ezc_fun;
}
else
{
item.functions[f].fun_cache = 0;
#ifdef EZC_USE_WINIX_LOGGER
log << log1 << "Ezc: unknown function: " << item.functions[f].name << logend;
#endif
#ifdef EZC_USE_WINIX_LOGGER
log << log1 << "Ezc: unknown function: " << item.functions[f].name << logend;
#endif
}
}
// one exception (if_index is putting its argument on the functions stack)
if( item.type == Item::item_ifindex )
break;
}
for(size_t i = 0; i < item.item_tab.size() ; ++i)
for(size_t i=0; i < item.item_tab.size() ; ++i)
CacheFunctions(*item.item_tab[i], fun);
}