diff --git a/crates/task/src/shell_builder.rs b/crates/task/src/shell_builder.rs index 31c435e2025cd6f553f39ef1779b62a3f29b098a..a6504f4eb765a8a144343691b82cdca9a6802cbd 100644 --- a/crates/task/src/shell_builder.rs +++ b/crates/task/src/shell_builder.rs @@ -166,7 +166,7 @@ mod test { #[test] fn redirect_stdin_to_dev_null_fish() { let shell = Shell::Program("fish".to_owned()); - let shell_builder = ShellBuilder::new(&shell); + let shell_builder = ShellBuilder::new(&shell, false); let (program, args) = shell_builder .redirect_stdin_to_dev_null() diff --git a/crates/task/src/task.rs b/crates/task/src/task.rs index 0b23a1cde0ccdeb8a7c5686f97fd57d1b0c72620..bfb84ced944cda758c7c453f561ca4ec13220c07 100644 --- a/crates/task/src/task.rs +++ b/crates/task/src/task.rs @@ -355,10 +355,10 @@ impl Shell { } } - pub fn shell_kind(&self) -> ShellKind { + pub fn shell_kind(&self, is_windows: bool) -> ShellKind { match self { - Shell::Program(program) => ShellKind::new(program), - Shell::WithArguments { program, .. } => ShellKind::new(program), + Shell::Program(program) => ShellKind::new(program, is_windows), + Shell::WithArguments { program, .. } => ShellKind::new(program, is_windows), Shell::System => ShellKind::system(), } } diff --git a/crates/terminal/src/terminal.rs b/crates/terminal/src/terminal.rs index 6c76af0542df09e3204e05c4cd609b08aa3849b5..cf6851ac346cbc26b88029822fddb88b408be16e 100644 --- a/crates/terminal/src/terminal.rs +++ b/crates/terminal/src/terminal.rs @@ -495,7 +495,7 @@ impl TerminalBuilder { .unwrap_or(params.program.clone()) }); - let shell_kind = shell.shell_kind(); + let shell_kind = shell.shell_kind(cfg!(windows)); let pty_options = { let alac_shell = shell_params.as_ref().map(|params| {