Unnamed repository; edit this file 'description' to name the repository.
-rw-r--r--editors/code/src/debug.ts9
-rw-r--r--editors/code/src/toolchain.ts7
2 files changed, 12 insertions, 4 deletions
diff --git a/editors/code/src/debug.ts b/editors/code/src/debug.ts
index 268b70b4fb..cffee1de6a 100644
--- a/editors/code/src/debug.ts
+++ b/editors/code/src/debug.ts
@@ -118,8 +118,8 @@ async function getDebugConfiguration(
return path.normalize(p).replace(wsFolder, "${workspaceFolder" + workspaceQualifier + "}");
}
- const executable = await getDebugExecutable(runnable);
const env = prepareEnv(runnable, ctx.config.runnableEnv);
+ const executable = await getDebugExecutable(runnable, env);
let sourceFileMap = debugOptions.sourceFileMap;
if (sourceFileMap === "auto") {
// let's try to use the default toolchain
@@ -156,8 +156,11 @@ async function getDebugConfiguration(
return debugConfig;
}
-async function getDebugExecutable(runnable: ra.Runnable): Promise<string> {
- const cargo = new Cargo(runnable.args.workspaceRoot || ".", debugOutput);
+async function getDebugExecutable(
+ runnable: ra.Runnable,
+ env: Record<string, string>
+): Promise<string> {
+ const cargo = new Cargo(runnable.args.workspaceRoot || ".", debugOutput, env);
const executable = await cargo.executableFromArgs(runnable.args.cargoArgs);
// if we are here, there were no compilation errors.
diff --git a/editors/code/src/toolchain.ts b/editors/code/src/toolchain.ts
index eb70b88871..917a1d6b09 100644
--- a/editors/code/src/toolchain.ts
+++ b/editors/code/src/toolchain.ts
@@ -18,7 +18,11 @@ export interface ArtifactSpec {
}
export class Cargo {
- constructor(readonly rootFolder: string, readonly output: vscode.OutputChannel) {}
+ constructor(
+ readonly rootFolder: string,
+ readonly output: vscode.OutputChannel,
+ readonly env: Record<string, string>
+ ) {}
// Made public for testing purposes
static artifactSpec(args: readonly string[]): ArtifactSpec {
@@ -102,6 +106,7 @@ export class Cargo {
const cargo = cp.spawn(path, cargoArgs, {
stdio: ["ignore", "pipe", "pipe"],
cwd: this.rootFolder,
+ env: this.env,
});
cargo.on("error", (err) => reject(new Error(`could not launch cargo: ${err}`)));