From 5d9437bcaf8c85c80a2cba9b66845003729a54cf Mon Sep 17 00:00:00 2001 From: Arcterus Date: Thu, 1 Dec 2016 06:02:58 -0800 Subject: [PATCH] chgrp: remove unwrap() in is_bind_root() --- src/chgrp/chgrp.rs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/chgrp/chgrp.rs b/src/chgrp/chgrp.rs index 3613246d8..dce25c9d0 100644 --- a/src/chgrp/chgrp.rs +++ b/src/chgrp/chgrp.rs @@ -219,17 +219,18 @@ impl Chgrper { #[cfg(windows)] fn is_bind_root>(&self, root: P) -> bool { + // TODO: is there an equivalent on Windows? false } #[cfg(unix)] fn is_bind_root>(&self, path: P) -> bool { - use std::os::unix::fs::MetadataExt; - - // FIXME: remove unwrap here - let given = std::fs::metadata(path).unwrap(); - let root = std::fs::metadata("/").unwrap(); - given.dev() == root.dev() && given.ino() == root.ino() + if let (Ok(given), Ok(root)) = (fs::metadata(path), fs::metadata("/")) { + given.dev() == root.dev() && given.ino() == root.ino() + } else { + // FIXME: not totally sure if it's okay to just ignore an error here + false + } } fn traverse>(&self, root: P) -> i32 {