From c812ace4f6d749e8f1c607a8e19babef682ab5a2 Mon Sep 17 00:00:00 2001 From: Kavin <20838718+FireMasterK@users.noreply.github.com> Date: Mon, 4 Jul 2022 07:09:29 +0100 Subject: [PATCH] Fix errors being logged due to invalid requests. (#303) --- .../java/me/kavin/piped/utils/ResponseHelper.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main/java/me/kavin/piped/utils/ResponseHelper.java b/src/main/java/me/kavin/piped/utils/ResponseHelper.java index 5dcc562..b31bc3a 100644 --- a/src/main/java/me/kavin/piped/utils/ResponseHelper.java +++ b/src/main/java/me/kavin/piped/utils/ResponseHelper.java @@ -274,6 +274,9 @@ public class ResponseHelper { public static byte[] channelPageResponse(String channelId, String prevpageStr) throws IOException, ExtractionException { + if (StringUtils.isEmpty(prevpageStr)) + return mapper.writeValueAsBytes(new InvalidRequestResponse()); + Page prevpage = mapper.readValue(prevpageStr, Page.class); InfoItemsPage info = ChannelInfo.getMoreItems(YOUTUBE_SERVICE, @@ -388,6 +391,9 @@ public class ResponseHelper { public static byte[] playlistPageResponse(String playlistId, String prevpageStr) throws IOException, ExtractionException { + if (StringUtils.isEmpty(prevpageStr)) + return mapper.writeValueAsBytes(new InvalidRequestResponse()); + Page prevpage = mapper.readValue(prevpageStr, Page.class); InfoItemsPage info = PlaylistInfo.getMoreItems(YOUTUBE_SERVICE, @@ -552,6 +558,9 @@ public class ResponseHelper { public static byte[] searchPageResponse(String q, String filter, String prevpageStr) throws IOException, ExtractionException { + if (StringUtils.isEmpty(prevpageStr)) + return mapper.writeValueAsBytes(new InvalidRequestResponse()); + Page prevpage = mapper.readValue(prevpageStr, Page.class); InfoItemsPage pages = SearchInfo.getMoreItems(YOUTUBE_SERVICE, @@ -622,6 +631,9 @@ public class ResponseHelper { public static byte[] commentsPageResponse(String videoId, String prevpageStr) throws Exception { + if (StringUtils.isEmpty(prevpageStr)) + return mapper.writeValueAsBytes(new InvalidRequestResponse()); + Page prevpage = mapper.readValue(prevpageStr, Page.class); InfoItemsPage info = CommentsInfo.getMoreItems(YOUTUBE_SERVICE, "https://www.youtube.com/watch?v=" + videoId, prevpage);