diff --git a/log.ml b/log.ml index b9285ab..e704da6 100644 --- a/log.ml +++ b/log.ml @@ -18,13 +18,15 @@ open Lwt open Sexp +let mtx = Lwt_mutex.create () let write_to_log label body = - try_lwt - lwt () = Lwt_io.print label in - lwt () = Lwt_io.print ": " in - lwt () = output_sexp_human Lwt_io.stdout body in - Lwt_io.printl "" - with _ -> return () + Lwt_mutex.with_lock mtx (fun () -> + try_lwt + lwt () = Lwt_io.print label in + lwt () = Lwt_io.print ": " in + lwt () = output_sexp_human Lwt_io.stdout body in + Lwt_io.printl "" + with _ -> return ()) let hook = ref write_to_log