Add a sync from the known path to the env (#3335)

This commit is contained in:
JT
2021-04-21 08:22:53 +12:00
committed by GitHub
parent 3b2ed7631f
commit da81e21bf2
4 changed files with 14 additions and 0 deletions

View File

@ -25,6 +25,7 @@ pub(crate) fn run_external_command(
) -> Result<InputStream, ShellError> {
trace!(target: "nu::run::external", "-> {}", command.name);
context.sync_path_to_env();
if !context.host.lock().is_external_cmd(&command.name) {
return Err(ShellError::labeled_error(
"Command not found",

View File

@ -138,6 +138,7 @@ fn maybe_autocd_dir(cmd: &ExternalCommand, ctx: &mut EvaluationContext) -> Optio
// - the command name ends in a path separator, or
// - it's not a command on the path and no arguments were given.
let name = &cmd.name;
ctx.sync_path_to_env();
let path_name = if name.ends_with(std::path::is_separator)
|| (cmd.args.is_empty()
&& PathBuf::from(name).is_dir()