From b8ab95a8a11c415f53d7c9602754a2af7a9f7490 Mon Sep 17 00:00:00 2001 From: Discookie Date: Wed, 26 Jan 2022 21:53:54 +0100 Subject: [PATCH] Fix replacing ${workspaceFolder} in analyze args --- src/backend/executor/bridge.ts | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/backend/executor/bridge.ts b/src/backend/executor/bridge.ts index 95cac9e..853fb6f 100644 --- a/src/backend/executor/bridge.ts +++ b/src/backend/executor/bridge.ts @@ -120,7 +120,20 @@ export class ExecutorBridge implements Disposable { ?? path.join(workspaceFolder, '.codechecker'); const ccArgumentsSetting = workspace.getConfiguration('codechecker.executor').get('arguments'); - const ccArguments = parse(ccArgumentsSetting ?? '') + + // TODO: Merge this collection with replaceVariables + const env: { [key: string]: string } = { + workspaceFolder, + workspaceRoot: workspaceFolder, + cwd: process.cwd() + }; + for (const [key, val] of Object.entries(process.env)) { + if (val !== undefined) { + env[`env.${key}`] = val; + } + } + + const ccArguments = parse(ccArgumentsSetting ?? '', env) .filter((entry) => typeof entry === 'string' && entry.length > 0) .map((entry) => replaceVariables(entry as string)!);