Commit e52098c9 authored by Mathieu Malaterre's avatar Mathieu Malaterre

BUG: Need to reset internal structure in case of multiple calls to Load

parent 5c572850
......@@ -76,6 +76,13 @@ const char* Directory::GetPath() const
return this->Internal->Path.c_str();
}
//----------------------------------------------------------------------------
void Directory::Clear()
{
this->Internal->Path.clear();
this->Internal->Files.clear();
}
} // namespace KWSYS_NAMESPACE
// First microsoft compilers
......@@ -96,6 +103,7 @@ namespace KWSYS_NAMESPACE
bool Directory::Load(const char* name)
{
this->Clear();
#if _MSC_VER < 1300
long srchHandle;
#else
......@@ -148,6 +156,7 @@ namespace KWSYS_NAMESPACE
bool Directory::Load(const char* name)
{
this->Clear();
DIR* dir = opendir(name);
if (!dir)
......
......@@ -57,6 +57,13 @@ public:
*/
const char* GetPath() const;
protected:
/**
* Clear the internal structure. Used internally at beginning of Load(...) to clear
* the cache.
*/
void Clear();
private:
// Private implementation details.
DirectoryInternals* Internal;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment