earlier check for stop signal

This commit is contained in:
Jörn-Michael Miehe 2025-06-05 12:58:09 +00:00
parent e86b11d058
commit 3bf5d96e04

View file

@ -25,7 +25,7 @@ fn main() {
let stop_ctrlc = stop.clone();
ctrlc::set_handler(move || {
stop_ctrlc.store(true, Ordering::SeqCst);
info!("stopping after chunk ...");
info!("stopping as soon as possible ...");
})
.expect("Error setting Ctrl-C handler");
@ -48,29 +48,33 @@ fn main() {
.interact()
.map_or(None, |b| b.then_some(state))
})
.unwrap_or_else(|| match AppState::from_args(&args, &agent) {
Ok(state) => {
state.save().unwrap();
state
}
Err(e) => {
if let Some(cause) = match e {
ureq::Error::StatusCode(403) => Some("Alias ID"),
ureq::Error::Io(_) => Some("URL"),
_ => None,
} {
println!(
"{} probably wrong: {} {:?}",
style("Error!").red(),
style(cause).cyan(),
style(e.to_string()).yellow()
);
} else {
error!("unknown error: {e}");
println!("{}", style("Unknown Error!").red());
}
.unwrap_or_else(|| {
stop.load(Ordering::SeqCst).then(|| exit(0));
exit(1);
match AppState::from_args(&args, &agent) {
Ok(state) => {
state.save().unwrap();
state
}
Err(e) => {
if let Some(cause) = match e {
ureq::Error::StatusCode(403) => Some("Alias ID"),
ureq::Error::Io(_) => Some("URL"),
_ => None,
} {
println!(
"{} probably wrong: {} {:?}",
style("Error!").red(),
style(cause).cyan(),
style(e.to_string()).yellow()
);
} else {
error!("unknown error: {e}");
println!("{}", style("Unknown Error!").red());
}
exit(1);
}
}
});