Skip to content

Commit 5b1cd13

Browse files
authored
Merge branch 'main' into codeql-spark-run-32061614920
2 parents f7dbb4a + 5b46f51 commit 5b1cd13

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

rust/extractor/src/config.rs

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,14 +108,23 @@ impl Config {
108108
figment.extract().context("loading configuration")
109109
}
110110

111+
fn get_extra_env(&self) -> FxHashMap<String, Option<String>> {
112+
let mut extra_env = FxHashMap::default();
113+
// RUSTUP_AUTO_INSTALL is set to 0 by rust-analyzer (https://github.com/rust-lang/rust-analyzer/issues/20719),
114+
// but we do want to allow rustup to auto-install toolchains if needed, so we set it to 1 here.
115+
extra_env.insert("RUSTUP_AUTO_INSTALL".to_owned(), Some("1".to_owned()));
116+
extra_env.extend(self.cargo_extra_env.clone());
117+
extra_env
118+
}
119+
111120
fn sysroot(&self, dir: &AbsPath) -> Sysroot {
112121
let sysroot_input = self.sysroot.as_ref().map(|p| join_path_buf(dir, p));
113122
let sysroot_src_input = self.sysroot_src.as_ref().map(|p| join_path_buf(dir, p));
114123
match (sysroot_input, sysroot_src_input) {
115-
(None, None) => Sysroot::discover(dir, &self.cargo_extra_env),
124+
(None, None) => Sysroot::discover(dir, &self.get_extra_env()),
116125
(Some(sysroot), None) => Sysroot::discover_rust_lib_src_dir(sysroot),
117126
(None, Some(sysroot_src)) => {
118-
Sysroot::discover_with_src_override(dir, &self.cargo_extra_env, sysroot_src)
127+
Sysroot::discover_with_src_override(dir, &self.get_extra_env(), sysroot_src)
119128
}
120129
(Some(sysroot), Some(sysroot_src)) => Sysroot::new(Some(sysroot), Some(sysroot_src)),
121130
}
@@ -166,7 +175,7 @@ impl Config {
166175
.map(ToOwned::to_owned)
167176
.map(RustLibSource::Path),
168177

169-
extra_env: self.cargo_extra_env.clone(),
178+
extra_env: self.get_extra_env(),
170179
extra_args: self.cargo_extra_args.clone(),
171180
extra_includes: self
172181
.extra_includes

0 commit comments

Comments
 (0)