diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmListFileCache.cxx | 10 | ||||
-rw-r--r-- | Source/cmListFileCache.h | 4 |
2 files changed, 14 insertions, 0 deletions
diff --git a/Source/cmListFileCache.cxx b/Source/cmListFileCache.cxx index 83dd3cf..0b6e0b8 100644 --- a/Source/cmListFileCache.cxx +++ b/Source/cmListFileCache.cxx @@ -109,3 +109,13 @@ bool cmListFileCache::CacheFile(const char* path) m_ListFileCache[path] = inFile; return true; } + +void cmListFileCache::FlushCache(const char* path) +{ + ListFileMap::iterator it = m_ListFileCache.find(path); + if ( it != m_ListFileCache.end() ) + { + m_ListFileCache.erase(it); + return; + } +} diff --git a/Source/cmListFileCache.h b/Source/cmListFileCache.h index f2362db..cd15a31 100644 --- a/Source/cmListFileCache.h +++ b/Source/cmListFileCache.h @@ -55,6 +55,10 @@ public: * NULL is returned. */ cmListFile* GetFileCache(const char* path); + + //! Flush cache file out of cache. + void FlushCache(const char* path); + private: // Cache the file bool CacheFile(const char* path); |