From cd3262745d7d465870762b21f3f69a867a6ead6f Mon Sep 17 00:00:00 2001 From: TobiGr Date: Sat, 3 Dec 2022 16:10:45 +0100 Subject: [PATCH] [PeerTube] Report Exceptions thrown while getting a stream's subtitles --- .../extractors/PeertubeStreamExtractor.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java index 18606377..a83ccf9b 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/peertube/extractors/PeertubeStreamExtractor.java @@ -61,6 +61,8 @@ public class PeertubeStreamExtractor extends StreamExtractor { private final List audioStreams = new ArrayList<>(); private final List videoStreams = new ArrayList<>(); + private ParsingException subtitlesException = null; + public PeertubeStreamExtractor(final StreamingService service, final LinkHandler linkHandler) throws ParsingException { super(service, linkHandler); @@ -262,13 +264,19 @@ public class PeertubeStreamExtractor extends StreamExtractor { @Nonnull @Override - public List getSubtitlesDefault() { + public List getSubtitlesDefault() throws ParsingException { + if (subtitlesException != null) { + throw subtitlesException; + } return subtitles; } @Nonnull @Override - public List getSubtitles(final MediaFormat format) { + public List getSubtitles(final MediaFormat format) throws ParsingException { + if (subtitlesException != null) { + throw subtitlesException; + } return subtitles.stream() .filter(sub -> sub.getFormat() == format) .collect(Collectors.toList()); @@ -420,8 +428,8 @@ public class PeertubeStreamExtractor extends StreamExtractor { } } } - } catch (final Exception ignored) { - // Ignore all exceptions + } catch (final Exception e) { + subtitlesException = new ParsingException("Could not get subtitles", e); } } }