diff --git a/CHANGELOG.md b/CHANGELOG.md index 79a1c50..2bf2ea9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +# unreleased + +## Bugfixes + +- Throw an error when try to view a directory, see #234 (@Integral-Tech) + # v0.15.0 ## Features diff --git a/src/main.rs b/src/main.rs index a881d05..d760a95 100644 --- a/src/main.rs +++ b/src/main.rs @@ -234,7 +234,14 @@ fn run() -> Result<()> { let stdin = io::stdin(); let mut reader = match opt.file { - Some(filename) => Input::File(File::open(filename)?), + Some(filename) => { + let file = File::open(&filename)?; + if file.metadata()?.is_dir() { + return Err(anyhow!("{} is a directory.", filename.display())); + } + + Input::File(file) + } None => Input::Stdin(stdin.lock()), };