From f26d17838089877ec9e619a69f85214e5b505fe5 Mon Sep 17 00:00:00 2001 From: Simon Cruanes Date: Thu, 17 Feb 2022 21:19:19 -0500 Subject: [PATCH] feat(main): catch ctrl-c to cleanup this allows us to cleanup progress bar, print stats, finish tracing, etc. --- src/main/main.ml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/main.ml b/src/main/main.ml index 0d3be230..108ebe1e 100644 --- a/src/main/main.ml +++ b/src/main/main.ml @@ -219,6 +219,7 @@ let main_cnf () : _ result = r let main () = + Sys.catch_break true; (* instrumentation and tracing *) Sidekick_tef.with_setup @@ fun () -> @@ -278,6 +279,9 @@ let () = match main() with | Invalid_argument e -> Format.printf "invalid argument:\n%s@." e; exit_ 127 + | Sys.Break -> + Printf.printf "interrupted.\n%!"; + exit_ 1; | _ -> raise e end