From d66b0f4146989e1636709a03584114f624a2d08b Mon Sep 17 00:00:00 2001 From: Jeremie Allard Date: Mon, 24 Jun 2024 16:36:59 +0200 Subject: [PATCH] presets + cmake.buildToolArgs: make sure `--` is added in all cases (#3755) * presets + cmake.buildToolArgs: make sure `--` is added in all cases Fixes #3754. This issue was introduced in #3537 (cmake.buildToolsArgs was ignored for presets before). * Update changelog --------- Co-authored-by: Garrett Campbell <86264750+gcampbell-msft@users.noreply.github.com> --- CHANGELOG.md | 1 + src/preset.ts | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 09f3739f3..8366dcb5d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -59,6 +59,7 @@ Bug Fixes: - Fix CMakePresets.json schema validation. [#3651](https://github.com/microsoft/vscode-cmake-tools/issues/3651) - Update what we use to create the workspace browse configuration to pass to cpp tools by filtering out extra file groups that are generated. [#3729](https://github.com/microsoft/vscode-cmake-tools/issues/3729) - Fix issue where `cmake.cacheInit` isn't supporting absolute path in environment variables. [#2777](https://github.com/microsoft/vscode-cmake-tools/issues/2777) +- Fix issue where `cmake.buildToolArgs` was sometimes applied incorrectly when presets are used [#3754](https://github.com/microsoft/vscode-cmake-tools/issues/3754) ## 1.17.17 diff --git a/src/preset.ts b/src/preset.ts index 037cdd924..5afe8f748 100644 --- a/src/preset.ts +++ b/src/preset.ts @@ -2032,8 +2032,11 @@ export function buildArgs(preset: BuildPreset, tempOverrideArgs?: string[], temp } tempOverrideArgs && result.push(...tempOverrideArgs); - preset.nativeToolOptions && result.push('--', ...preset.nativeToolOptions); - tempOverrideBuildToolArgs && result.push(...tempOverrideBuildToolArgs); + if (preset.nativeToolOptions || tempOverrideBuildToolArgs) { + result.push('--'); + preset.nativeToolOptions && result.push(...preset.nativeToolOptions); + tempOverrideBuildToolArgs && result.push(...tempOverrideBuildToolArgs); + } return result; }