diff --git a/src/main.rs b/src/main.rs index d3aaa4a..ad1b657 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,6 +5,7 @@ use std::{ io::{BufReader, Error, ErrorKind, Result, prelude::*}, net::{TcpListener, TcpStream}, path::{Path, PathBuf}, + process::ExitCode, sync::{ Arc, Mutex, atomic::{AtomicUsize, Ordering}, @@ -32,10 +33,10 @@ use vn_settings::{ mod dialog; -fn main() { +fn main() -> ExitCode { let Ok(path) = env::current_dir() else { eprintln!("Current directory does not exist!"); - return; + return ExitCode::FAILURE; }; let mut args = env::args(); @@ -44,6 +45,7 @@ fn main() { let password = args.next(); let partial_password = args.next(); start_server(path, &address, password, partial_password); + ExitCode::FAILURE } fn start_server( @@ -52,7 +54,10 @@ fn start_server( password: Option, partial_password: Option, ) { - let listener = TcpListener::bind(address).expect("Invalid bind address!"); + let Ok(listener) = TcpListener::bind(address) else { + eprintln!("Invalid bind address {address:?}!"); + return; + }; eprintln!("Strated server!"); let context: Arc> = Arc::default();