From 61a5ea9cc7a73ad7a15409072f42f2095b55b690 Mon Sep 17 00:00:00 2001 From: Dirk Baeumer Date: Tue, 21 Nov 2017 11:13:17 +0100 Subject: [PATCH] Fixes #38793: Environment variables not persisted across task chains --- src/vs/workbench/parts/tasks/node/taskConfiguration.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/vs/workbench/parts/tasks/node/taskConfiguration.ts b/src/vs/workbench/parts/tasks/node/taskConfiguration.ts index 7719c455243..3be7a660991 100644 --- a/src/vs/workbench/parts/tasks/node/taskConfiguration.ts +++ b/src/vs/workbench/parts/tasks/node/taskConfiguration.ts @@ -810,6 +810,10 @@ namespace CommandConfiguration { return isEmpty(result) ? undefined : result; } + export function hasCommand(value: Tasks.CommandConfiguration): boolean { + return value && !!value.name; + } + export function isEmpty(value: Tasks.CommandConfiguration): boolean { return _isEmpty(value, properties); } @@ -1278,7 +1282,8 @@ namespace CustomTask { export function fillGlobals(task: Tasks.CustomTask, globals: Globals): void { // We only merge a command from a global definition if there is no dependsOn - if (task.dependsOn === void 0) { + // or there is a dependsOn and a defined command. + if (CommandConfiguration.hasCommand(task.command) || task.dependsOn === void 0) { task.command = CommandConfiguration.fillGlobals(task.command, globals.command, task.name); } // promptOnClose is inferred from isBackground if available -- GitLab