diff --git a/clippy_dev/src/fmt.rs b/clippy_dev/src/fmt.rs index c66738592820..0b0269e90192 100644 --- a/clippy_dev/src/fmt.rs +++ b/clippy_dev/src/fmt.rs @@ -307,16 +307,19 @@ fn run_rustfmt(context: &FmtContext) -> Result<(), Error> { // the "main" function of cargo dev fmt pub fn run(check: bool, verbose: bool) { - let output = Command::new("rustup") + let result = Command::new("rustup") .args(["which", "rustfmt"]) .stderr(Stdio::inherit()) - .output() - .expect("error running `rustup which rustfmt`"); - if !output.status.success() { - eprintln!("`rustup which rustfmt` did not execute successfully"); - process::exit(1); - } - let mut rustfmt_path = String::from_utf8(output.stdout).expect("invalid rustfmt path"); + .output(); + + let mut rustfmt_path = if let Ok(output) = result + && output.status.success() + { + String::from_utf8(output.stdout).expect("invalid rustfmt path") + } else { + String::from("rustfmt") + }; + rustfmt_path.truncate(rustfmt_path.trim_end().len()); let context = FmtContext {