Fix for Windows: do not run binaries from CWD

This fixes a bug on Windows where `Command::new` would also run
executables from the current working directory, possibly resulting in
accidental runs of programs called `less`.
This commit is contained in:
David Peter authored and David Peter committed 2021-07-12 23:17:30 +02:00
1 parent 3617c98cf5
commit bf2b2df9c9
4 files changed
+41 -2

No files matched your search

+3 -1
View File
@@ -4,7 +4,9 @@ use std::ffi::OsStr;
use std::process::Command;
pub fn retrieve_less_version(less_path: &dyn AsRef<OsStr>) -> Option<usize> {
let cmd = Command::new(less_path).arg("--version").output().ok()?;
let resolved_path = grep_cli::resolve_binary(less_path.as_ref()).ok()?;
let cmd = Command::new(resolved_path).arg("--version").output().ok()?;
parse_less_version(&cmd.stdout)
}