util: Fix shell environment fetching failing with nu (#40275)

Release Notes:

- Fixed shell environment fetching failing with nu shell
This commit is contained in:
Lukas Wirth
2025-10-16 10:21:31 +00:00
committed by GitHub
parent c2ace408d9
commit 9948778e96
3 changed files with 7 additions and 2 deletions
+1 -1
View File
@@ -263,7 +263,7 @@ async fn load_shell_environment(
.into_iter()
.collect();
(Some(fake_env), None)
} else if cfg!(target_os = "windows",) {
} else if cfg!(target_os = "windows") {
let (shell, args) = shell.program_and_args();
let envs = match shell_env::capture(shell, args, dir).await {
Ok(envs) => envs,
+1
View File
@@ -45,6 +45,7 @@ pub fn get_windows_git_bash() -> Option<String> {
let git = which::which("git").ok()?;
let git_bash = git.parent()?.parent()?.join("bin").join("bash.exe");
if git_bash.is_file() {
log::info!("Found git-bash at {}", git_bash.display());
Some(git_bash.to_string_lossy().to_string())
} else {
None
+5 -1
View File
@@ -177,8 +177,12 @@ async fn capture_windows(
.args([
"-c",
&format!(
"cd '{}'; {} --printenv",
"cd '{}'; {}{} --printenv",
directory.display(),
shell_kind
.command_prefix()
.map(|prefix| prefix.to_string())
.unwrap_or_default(),
zed_path.display()
),
])