From 9de8405c9f89ffa91e347b6c4753d79192d42902 Mon Sep 17 00:00:00 2001 From: TobiGr Date: Wed, 23 Nov 2022 08:33:06 +0100 Subject: [PATCH 1/3] [YouTube] Fix extracting the detailed error message of streams which are unavailable --- .../services/youtube/extractors/YoutubeStreamExtractor.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java index 10edd068a..f56ba4c4e 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java @@ -943,7 +943,8 @@ public class YoutubeStreamExtractor extends StreamExtractor { } } - if (status.equalsIgnoreCase("unplayable") && reason != null) { + if ((status.equalsIgnoreCase("unplayable") || status.equalsIgnoreCase("error")) + && reason != null) { if (reason.contains("Music Premium")) { throw new YoutubeMusicPremiumContentException(); } From 4680df0bdfd625397fd55385a39f0eda0503ccc6 Mon Sep 17 00:00:00 2001 From: TobiGr Date: Wed, 23 Nov 2022 17:03:22 +0100 Subject: [PATCH 2/3] Fix throwing correct reason --- .../services/youtube/extractors/YoutubeStreamExtractor.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java index f56ba4c4e..310580cb7 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java @@ -964,6 +964,8 @@ public class YoutubeStreamExtractor extends StreamExtractor { if (detailedErrorMessage != null && detailedErrorMessage.contains("country")) { throw new GeographicRestrictionException( "This video is not available in client's country."); + } else { + throw new ContentNotAvailableException(reason); } } } From 5abea222251d4fb966b7ed4dd1d1e6db75549ebf Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Sat, 26 Nov 2022 21:09:08 +0000 Subject: [PATCH 3/3] Fix throwing correct reason. --- .../services/youtube/extractors/YoutubeStreamExtractor.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java index 310580cb7..150acf87b 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java @@ -964,6 +964,8 @@ public class YoutubeStreamExtractor extends StreamExtractor { if (detailedErrorMessage != null && detailedErrorMessage.contains("country")) { throw new GeographicRestrictionException( "This video is not available in client's country."); + } else if (detailedErrorMessage != null) { + throw new ContentNotAvailableException(detailedErrorMessage); } else { throw new ContentNotAvailableException(reason); }