From 5bbecf1e1dde31ec0dae500a7a514f2d44d67e83 Mon Sep 17 00:00:00 2001 From: oop7 <110548351+oop7@users.noreply.github.com> Date: Tue, 28 Apr 2026 13:29:26 +0300 Subject: [PATCH] Detect private/sign-in yt-dlp errors Update AnalysisThread error handling to detect yt-dlp stderr containing "Private video" or "Sign in". For those cases, emit a localized errors.private_video message and log a specific private-video error; otherwise preserve the existing generic ytdlp_failed behavior. Playlist visibility signals and early return remain unchanged. --- ytsage/gui/ytsage_gui_analysis.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ytsage/gui/ytsage_gui_analysis.py b/ytsage/gui/ytsage_gui_analysis.py index 2dd4f42..9f5a33d 100644 --- a/ytsage/gui/ytsage_gui_analysis.py +++ b/ytsage/gui/ytsage_gui_analysis.py @@ -131,8 +131,13 @@ class AnalysisThread(QThread): return if result.returncode != 0: - logger.error(f"yt-dlp failed: {result.stderr}") - self.analysis_error.emit(_("errors.ytdlp_failed", error=result.stderr)) + if "Private video" in result.stderr or "Sign in" in result.stderr: + logger.error(f"yt-dlp failed (private video): {result.stderr}") + self.analysis_error.emit(_("errors.private_video")) + else: + logger.error(f"yt-dlp failed: {result.stderr}") + self.analysis_error.emit(_("errors.ytdlp_failed", error=result.stderr)) + self.playlist_info_visible.emit(False) self.playlist_select_btn_visible.emit(False) return