fixed: PatternCacher incorrectly rebuilt the cache
some new Ezc::Pattern objects were inserted the storage container is std::map<long,...> but we traverse it as a std::vector e.g.: for(size_t i=0 ; i<pattern_tab.size() ; ++i) RebuildCache(pattern_tab[i].pattern); so eventually new patterns were added to the map (operator []) git-svn-id: svn://ttmath.org/publicrep/winix/trunk@980 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
@@ -221,10 +221,22 @@ void PatternCacher::RebuildCache(Ezc::Pattern & pattern)
|
||||
|
||||
void PatternCacher::RebuildCache()
|
||||
{
|
||||
for(size_t i=0 ; i<pattern_tab.size() ; ++i)
|
||||
RebuildCache(pattern_tab[i].pattern);
|
||||
PatternTab::iterator i = pattern_tab.begin();
|
||||
|
||||
for( ; i != pattern_tab.end() ; ++i)
|
||||
RebuildCache(i->second.pattern);
|
||||
}
|
||||
|
||||
|
||||
void PatternCacher::ClearCache()
|
||||
{
|
||||
PatternTab::iterator i = pattern_tab.begin();
|
||||
|
||||
for( ; i != pattern_tab.end() ; ++i)
|
||||
i->second.pattern.ClearCache();
|
||||
}
|
||||
|
||||
|
||||
|
||||
} // namespace Winix
|
||||
|
||||
|
Reference in New Issue
Block a user