summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorMatthew Woehlke <matthew.woehlke@kitware.com>2016-05-05 15:33:56 (GMT)
committerMatthew Woehlke <matthew.woehlke@kitware.com>2016-05-05 15:33:56 (GMT)
commitf45c16e7ee562f9918b75134b54b92661c5a98c8 (patch)
tree150004236fb431ee7f8c0b37963a4eb08645fe94 /Source
parent8d7ef6a8b02f2fca4ccb9aaad71ca0d2235ce8a6 (diff)
downloadCMake-f45c16e7ee562f9918b75134b54b92661c5a98c8.zip
CMake-f45c16e7ee562f9918b75134b54b92661c5a98c8.tar.gz
CMake-f45c16e7ee562f9918b75134b54b92661c5a98c8.tar.bz2
Fix export file variable pollution
Add missing unset of scratch variables to generated export file for case that the file was already included. We already unset these when parsing the file normally, but the multiple inclusion case was leaving them around.
Diffstat (limited to 'Source')
-rw-r--r--Source/cmExportFileGenerator.cxx3
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmExportFileGenerator.cxx b/Source/cmExportFileGenerator.cxx
index 2b3ce14..89a8f6c 100644
--- a/Source/cmExportFileGenerator.cxx
+++ b/Source/cmExportFileGenerator.cxx
@@ -1040,6 +1040,9 @@ void cmExportFileGenerator::GenerateExpectedTargetsCode(std::ostream& os,
" endif()\n"
"endforeach()\n"
"if(\"${_targetsDefined}\" STREQUAL \"${_expectedTargets}\")\n"
+ " unset(_targetsDefined)\n"
+ " unset(_targetsNotDefined)\n"
+ " unset(_expectedTargets)\n"
" set(CMAKE_IMPORT_FILE_VERSION)\n"
" cmake_policy(POP)\n"
" return()\n"