llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-lldb Author: Ebuka Ezike (da-viper) <details> <summary>Changes</summary> The DAP server was spawned using only the user defined `options.env`, which dropped the parent process's environment (e.g. PATH). Merge the two, giving user-defined values priority on conflicts. Fixes #<!-- -->159498 --- Full diff: https://github.com/llvm/llvm-project/pull/213679.diff 1 Files Affected: - (modified) lldb/tools/lldb-dap/extension/src/lldb-dap-server.ts (+7-1) ``````````diff diff --git a/lldb/tools/lldb-dap/extension/src/lldb-dap-server.ts b/lldb/tools/lldb-dap/extension/src/lldb-dap-server.ts index deacdea145a41..7ee12d66b49d1 100644 --- a/lldb/tools/lldb-dap/extension/src/lldb-dap-server.ts +++ b/lldb/tools/lldb-dap/extension/src/lldb-dap-server.ts @@ -59,8 +59,14 @@ export class LLDBDapServer implements vscode.Disposable { return this.serverInfo; } + // Merge the parent env with the user defined env (user defined takes priority). + const dapSpawnOptions: child_process.SpawnOptionsWithoutStdio = { + ...options, + env: { ...process.env, ...options?.env }, + }; + this.serverInfo = new Promise((resolve, reject) => { - const process = child_process.spawn(dapPath, dapArgs, options); + const process = child_process.spawn(dapPath, dapArgs, dapSpawnOptions); process.on("error", (error) => { reject(error); this.cleanUp(process); `````````` </details> https://github.com/llvm/llvm-project/pull/213679 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
