From 77af8b5cada16d6b21ae47d41daa6e14788700cd Mon Sep 17 00:00:00 2001 From: hodasemi Date: Sun, 25 Nov 2018 19:30:53 +0100 Subject: [PATCH] improve yt-dl error output --- src/player/youtube.rs | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/player/youtube.rs b/src/player/youtube.rs index 5d475bb..e06b20c 100644 --- a/src/player/youtube.rs +++ b/src/player/youtube.rs @@ -52,11 +52,24 @@ pub fn youtube_dl(uri: &str) -> Result, String> { .output() { Ok(out) => out, - Err(_) => return Err("youtube-dl error".to_string()), + Err(why) => return Err(format!("youtube-dl error {:?}", why)), }; if !out.status.success() { - return Err("shell error".to_string()); + let stdout = match String::from_utf8(out.stdout) { + Ok(string) => string, + Err(_) => String::new(), + }; + + let stderr = match String::from_utf8(out.stderr) { + Ok(string) => string, + Err(_) => String::new(), + }; + + return Err(format!( + "Shell error\nstdout: {}\nstderr: {}", + stdout, stderr + )); } let files = check_result!(convert_output(&out));