https://github.com/Kitware/CMake
Revision d01120a47a53fbe4bab1b1c313036f956dbf77d9 authored by Ben Boeckel on 29 November 2023, 02:10:38 UTC, committed by Ben Boeckel on 29 November 2023, 13:34:21 UTC
Commit f2617cf8e6 (Source: Add cmInstallRuntimeDependencySet,
2021-05-19) introduced via !6186 to 3.21 added storage to the global
generator for runtime dependency sets. However, this was not cleared at
the start of configure in the `ClearGeneratorMembers()` method. When
using `ccmake` to configure (and, presumably `cmake-gui` too), projects
using `install(TARGETS … RUNTIME_DEPENDENCY_SET)` would use dependency
set tracking instances from previous configure runs that held references
to targets free'd with the `cmMakefile` instance that held them.

Clear the dependency sets at the beginning of configure so that they are
not remembered and trigger via use-after-free bugs when used.

Fixes: #25446
1 parent 01deb58
History
Tip revision: d01120a47a53fbe4bab1b1c313036f956dbf77d9 authored by Ben Boeckel on 29 November 2023, 02:10:38 UTC
cmGlobalGenerator: clear RuntimeDependencySet members at configure
Tip revision: d01120a
File Mode Size
.github
.gitlab
Auxiliary
Help
Licenses
Modules
Packaging
Source
Templates
Tests
Utilities
.clang-format -rw-r--r-- 1.4 KB
.clang-tidy -rw-r--r-- 2.1 KB
.codespellrc -rw-r--r-- 644 bytes
.editorconfig -rw-r--r-- 164 bytes
.gitattributes -rw-r--r-- 1.2 KB
.gitignore -rw-r--r-- 504 bytes
.gitlab-ci.yml -rw-r--r-- 38.5 KB
.hooks-config -rw-r--r-- 418 bytes
CMakeCPack.cmake -rw-r--r-- 9.9 KB
CMakeCPackOptions.cmake.in -rw-r--r-- 12.0 KB
CMakeGraphVizOptions.cmake -rw-r--r-- 153 bytes
CMakeLists.txt -rw-r--r-- 21.2 KB
CMakeLogo.gif -rw-r--r-- 4.4 KB
CONTRIBUTING.rst -rw-r--r-- 3.0 KB
CTestConfig.cmake -rw-r--r-- 566 bytes
CTestCustom.cmake.in -rw-r--r-- 7.3 KB
CompileFlags.cmake -rw-r--r-- 5.0 KB
Copyright.txt -rw-r--r-- 5.3 KB
DartConfig.cmake -rw-r--r-- 374 bytes
README.rst -rw-r--r-- 3.8 KB
bootstrap -rwxr-xr-x 64.4 KB
cmake_uninstall.cmake.in -rw-r--r-- 794 bytes
configure -rwxr-xr-x 99 bytes

README.rst

back to top