From 1860d6b80effc09ab2ed29e37b34632faa433da0 Mon Sep 17 00:00:00 2001 From: dweep Date: Thu, 11 Jun 2026 17:08:53 +0530 Subject: [PATCH] Fix NPE in getPlaylistHeader() when browseMetadataResponse is null On playlist continuation pages (getPage()), browseMetadataResponse is not set, causing a NullPointerException when getPlaylistHeader() tries to call .getObject() on it. Fix by returning an empty JsonObject early when browseMetadataResponse is null, avoiding the crash on subsequent playlist page loads. Fixes: TeamNewPipe/NewPipe#13593 --- .../youtube/extractors/YoutubePlaylistExtractor.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubePlaylistExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubePlaylistExtractor.java index 894ffdc038..47cd3b4f97 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubePlaylistExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubePlaylistExtractor.java @@ -177,10 +177,13 @@ private JsonObject getPlaylistInfo() throws ParsingException { @Nonnull private JsonObject getPlaylistHeader() { if (playlistHeader == null) { - playlistHeader = browseMetadataResponse.getObject(HEADER) + if (browseMetadataResponse == null) { + return new JsonObject(); + } + final JsonObject headerRenderer = browseMetadataResponse.getObject(HEADER) .getObject("playlistHeaderRenderer"); + playlistHeader = headerRenderer != null ? headerRenderer : new JsonObject(); } - return playlistHeader; }