Browse Source

BUG: Fix resolving of infinite loops while CMakeSetup/ccmake still running

Andy Cedilnik 21 years ago
parent
commit
34115a5989
2 changed files with 8 additions and 0 deletions
  1. 7 0
      Source/cmake.cxx
  2. 1 0
      Source/cmake.h

+ 7 - 0
Source/cmake.cxx

@@ -1065,6 +1065,8 @@ int cmake::Configure()
     m_GlobalGenerator->ClearEnabledLanguages();
     }
   
+  this->CleanupWrittenFiles();
+
   // actually do the configure
   m_GlobalGenerator->Configure();
   
@@ -1426,3 +1428,8 @@ bool cmake::HasWrittenFile(const char* file)
 {
   return m_WrittenFiles.find(file) != m_WrittenFiles.end();
 }
+
+void cmake::CleanupWrittenFiles()
+{
+  m_WrittenFiles.clear();
+}

+ 1 - 0
Source/cmake.h

@@ -261,6 +261,7 @@ class cmake
   ///! Get the list of files written by CMake using FILE(WRITE / WRITE_FILE
   void AddWrittenFile(const char* file);
   bool HasWrittenFile(const char* file);
+  void CleanupWrittenFiles();
 
 protected:
   typedef cmGlobalGenerator* (*CreateGeneratorFunctionType)();