From 343a86657e4941c79427357fb9333fd2b5cc1b9f Mon Sep 17 00:00:00 2001 From: mykola2312 Date: Tue, 20 Feb 2024 21:06:47 +0200 Subject: [PATCH] make yt-dlp error message its own enum type --- src/dl/yt_dlp.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/dl/yt_dlp.rs b/src/dl/yt_dlp.rs index 614d3bb..fe5f99a 100644 --- a/src/dl/yt_dlp.rs +++ b/src/dl/yt_dlp.rs @@ -131,12 +131,16 @@ impl YtDlpInfo { #[derive(Debug)] pub enum YtDlpError { SpawnError(SpawnError), + ErrorMessage(String), // keep it separate type if we ever plan to parse yt-dlp errors JsonError, } impl From for YtDlpError { fn from(value: SpawnError) -> Self { - Self::SpawnError(value) + match value { + SpawnError::ErrorMessage(msg) => Self::ErrorMessage(msg), + _ => Self::SpawnError(value) + } } } @@ -151,6 +155,7 @@ impl fmt::Display for YtDlpError { use YtDlpError as YTE; match self { YTE::SpawnError(e) => write!(f, "{}", e), + YTE::ErrorMessage(msg) => write!(f, "yt-dlp error - {}", msg), YTE::JsonError => write!(f, "json parsing error"), } }