From 5031bf2bd10225f13095e732c4b8ca040bfa7864 Mon Sep 17 00:00:00 2001 From: debris Date: Fri, 13 Dec 2019 13:40:13 +0100 Subject: [PATCH] Improve error message when user has no permission to read ~/.cargo/credentials --- src/cargo/util/config/mod.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/cargo/util/config/mod.rs b/src/cargo/util/config/mod.rs index c8de80eef7d..ab153c23ec9 100644 --- a/src/cargo/util/config/mod.rs +++ b/src/cargo/util/config/mod.rs @@ -807,13 +807,14 @@ impl Config { }; let mut contents = String::new(); - let mut file = File::open(&credentials)?; - file.read_to_string(&mut contents).chain_err(|| { - format!( - "failed to read configuration file `{}`", - credentials.display() - ) - })?; + File::open(&credentials) + .and_then(|mut file| file.read_to_string(&mut contents)) + .chain_err(|| { + format!( + "failed to read configuration file `{}`", + credentials.display() + ) + })?; let toml = cargo_toml::parse(&contents, &credentials, self).chain_err(|| { format!(