diff --git a/src/output.rs b/src/output.rs index d478f90..e12b6f3 100644 --- a/src/output.rs +++ b/src/output.rs @@ -1,6 +1,7 @@ use std::fs::File; use std::io::Write; use std::path::PathBuf; +use std::process::exit; use log::error; use crate::model_rgb_ascii::Ascii; @@ -14,7 +15,7 @@ pub fn print_terminal(art: Vec>, in_colour: bool) { } } -pub fn print_file(art: Vec>, out: PathBuf) -> std::io::Result<()> { +fn _print_file(art: Vec>, out: PathBuf) -> std::io::Result<()> { let mut file = File::create_new(out)?; for line in art { for ascii in line { @@ -23,4 +24,11 @@ pub fn print_file(art: Vec>, out: PathBuf) -> std::io::Result<()> { writeln!(file)?; } Ok(()) +} + +pub fn print_file(art: Vec>, out: PathBuf) { + if let Err(e) = _print_file(art, out) { + error!("Failed to write to file: {}", e.to_string()); + exit(1); + } } \ No newline at end of file