aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKunal Mohan <kunalmohan99@gmail.com>2021-04-09 22:00:42 +0530
committerKunal Mohan <kunalmohan99@gmail.com>2021-04-12 20:33:22 +0530
commit870d6d02b5319ac36b1df97673f031af8cc32b53 (patch)
tree41431a8942115bd6b8f8f2888568ac076e28ee07 /src
parentmake error model more autonomous (diff)
downloadsl0ppij-870d6d02b5319ac36b1df97673f031af8cc32b53.tar.gz
sl0ppij-870d6d02b5319ac36b1df97673f031af8cc32b53.tar.xz
sl0ppij-870d6d02b5319ac36b1df97673f031af8cc32b53.zip
restore terminal snapshot on panic
Diffstat (limited to 'src')
-rw-r--r--src/common/mod.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/common/mod.rs b/src/common/mod.rs
index 19f8e4bc..8f1c0812 100644
--- a/src/common/mod.rs
+++ b/src/common/mod.rs
@@ -641,7 +641,11 @@ pub fn start(mut os_input: Box<dyn OsApi>, opts: CliArgs) {
let _ = wasm_thread.join();
os_input.unset_raw_mode(0);
let goto_start_of_last_line = format!("\u{1b}[{};{}H", full_screen_ws.rows, 1);
- let error = format!("{}\n{}", goto_start_of_last_line, backtrace);
+ let restore_snapshot = "\u{1b}[?1049l";
+ let error = format!(
+ "{}\n{}{}",
+ goto_start_of_last_line, restore_snapshot, backtrace
+ );
let _ = os_input
.get_stdout_writer()
.write(error.as_bytes())