diff --git a/src/main.rs b/src/main.rs index 522e8c7..4de72f4 100644 --- a/src/main.rs +++ b/src/main.rs @@ -30,14 +30,14 @@ impl State { fn new() -> (Self, Task) { let mut state = State::default(); - state.error = env::args().nth(1).and_then(|path| { - utils::load_image(path) - .map(|image| state.image = Some(image)) - .err() - }); - let allocate_image = state.allocate_image(); + if let Some(path) = env::args().nth(1) { + match state.load_image(path) { + Err(e) => state.error = Some(e), + Ok(task) => return (state, task), + } + } - (state, allocate_image) + (state, Task::none()) } fn view(&self) -> Element<'_, Message, Theme, Renderer> { let mut main = Vec::new();