java-topology/defects/cmake-0006/patch/cmake-0006-writtensettings-unordered-set.patch

32 lines
1.4 KiB
Diff

# UNDF: UNDF-2026-000001069
# UNDF:
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -2775,10 +2775,10 @@ void cmVisualStudio10TargetGenerator::FinishWritingSource(
Elem& e2, ConfigToSettings const& toolSettings)
{
- std::vector<std::string> writtenSettings;
+ std::unordered_set<std::string> writtenSettings;
for (auto const& configSettings : toolSettings) {
for (auto const& setting : configSettings.second) {
- if (std::find(writtenSettings.begin(), writtenSettings.end(),
- setting.first) != writtenSettings.end()) {
+ if (writtenSettings.count(setting.first)) {
continue;
}
if (PropertyIsSameInAllConfigs(toolSettings, setting.first)) {
e2.Element(setting.first, setting.second);
- writtenSettings.push_back(setting.first);
+ writtenSettings.insert(setting.first);
} else {
e2.WritePlatformConfigTag(setting.first,
cmStrCat("'$(Configuration)|$(Platform)'=='",
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -1,6 +1,7 @@
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
file LICENSE.rst or https://cmake.org/licensing for details. */
#include "cmVisualStudio10TargetGenerator.h"
+#include <unordered_set>