diff options
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/main.rs b/src/main.rs index 1a00173..296603d 100644 --- a/src/main.rs +++ b/src/main.rs @@ -12,7 +12,9 @@ fn help() { } fn parse_args() -> Option<String> { + let mut config_fname = "/etc/sheldond.conf".to_string(); let mut args = env::args(); + loop { match args.next() { Some(arg) => { @@ -21,15 +23,14 @@ fn parse_args() -> Option<String> { return None; } if arg == "-c" || arg == "--config" { - let config_fname = args.next().unwrap(); - return Some(config_fname); + config_fname = args.next().unwrap().to_string(); } } None => break, } } - Some("/etc/sheldond.conf".to_string()) + Some(config_fname) } fn parse_config(fname: String) -> server::ServerConfig { @@ -79,10 +80,13 @@ fn parse_config(fname: String) -> server::ServerConfig { } fn main() { - println!("sheldond {}", match option_env!("CARGO_PKG_VERSION") { - Some(v) => v, - None => "", - }); + println!( + "sheldond {}", + match option_env!("CARGO_PKG_VERSION") { + Some(v) => v, + None => "", + } + ); let config_fname = match parse_args() { Some(config_fname) => config_fname, |
