From 7157faf16da7966efb0905b778c774b48b46e6ef Mon Sep 17 00:00:00 2001 From: chris west Date: Sat, 23 May 2020 13:02:42 -0700 Subject: [PATCH] re-enable raw mode on media error --- src/utils.rs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/utils.rs b/src/utils.rs index 14ffa82..e8c68c5 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -111,13 +111,22 @@ pub fn open_media(url: &str) -> Result<()> { &url }; + let errfn = |e| { + if let Err(e) = terminal::enable_raw_mode() { + error!("`mpv` error: {}", e) + } else { + error!("`mpv` error: {}", e) + } + }; + terminal::disable_raw_mode()?; let mut cmd = process::Command::new("mpv") .arg(url) .stdin(Stdio::inherit()) .stdout(Stdio::inherit()) - .spawn()?; - cmd.wait()?; + .spawn() + .map_err(errfn)?; + cmd.wait().map_err(errfn)?; terminal::enable_raw_mode()?; Ok(())