From efcadad2f069f2e621530cef592c7af343506e11 Mon Sep 17 00:00:00 2001 From: ospab Date: Fri, 15 May 2026 16:10:47 +0300 Subject: [PATCH] fix: prevent console window closure on fatal errors via user prompt pause --- ostp/src/main.rs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/ostp/src/main.rs b/ostp/src/main.rs index 37d2333..64cc452 100644 --- a/ostp/src/main.rs +++ b/ostp/src/main.rs @@ -131,6 +131,25 @@ struct MuxConfig { #[tokio::main] async fn main() -> Result<()> { + let res = run_app().await; + if let Err(e) = res { + eprintln!("\n===================================================="); + eprintln!("[FATAL ERROR] Program terminated unexpectedly:"); + eprintln!(" {}", e); + eprintln!("===================================================="); + + #[cfg(target_os = "windows")] + { + println!("\nPress ENTER key to close this window..."); + let mut dummy = String::new(); + let _ = std::io::stdin().read_line(&mut dummy); + } + std::process::exit(1); + } + Ok(()) +} + +async fn run_app() -> Result<()> { let args = Args::parse(); if args.generate_key {