Unnamed repository; edit this file 'description' to name the repository.
Auto merge of #17295 - 0xJonas:fix_passing_env_vars_to_cpptools, r=Veykril
Use correct format for setting environment variables when debugging with cpptools
The RA VSCode extension uses an incorrect format for the environment variables in the `launch.json` when debugging with the C/C++ Extension. This extension uses a different format than CodeLLDB or NativeDebug, which means that the environment variables are not actually set for the debuggee.
What it currently looks like:
```json
"env": {
"NAME": "VALUE"
}
```
What the C/C++ extension expects:
```json
"environment": [
{ "name": "NAME", "value": "VALUE" }
]
```
For reference: https://code.visualstudio.com/docs/cpp/launch-json-reference#_environment
| -rw-r--r-- | editors/code/src/debug.ts | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/editors/code/src/debug.ts b/editors/code/src/debug.ts index 855e8b082a..4b96e4d5c8 100644 --- a/editors/code/src/debug.ts +++ b/editors/code/src/debug.ts @@ -194,7 +194,10 @@ function getCCppDebugConfig( args: runnable.args.executableArgs, cwd: runnable.args.cwd || runnable.args.workspaceRoot || ".", sourceFileMap, - env, + environment: Object.entries(env).map((entry) => ({ + name: entry[0], + value: entry[1], + })), // See https://github.com/rust-lang/rust-analyzer/issues/16901#issuecomment-2024486941 osx: { MIMode: "lldb", |