[YouTube] Fix fetching playlists continuations#1518
Conversation
isCoursePlaylist method uses getPlaylistHeader which uses browseMetadataResponse, only not null for a YoutubePlaylistExtractor instance in which the initial response has been fetched. As the extractor API allows to use a new extractor instance to fetch a page, we pass the isCoursePlaylist method result in the Page objects instead, in order to make the extraction of streams of continuations work properly.
|
absurdlylongusername
left a comment
There was a problem hiding this comment.
Is this a regression, a bug that's always existed, or a new issue caused by YT?
Also please add tests that verify the code works with the fix and fails without the fix.
|
This is a regression introduced by 27bbabc, but the original code was failing too and this was hidden in a try-catch block. I don't really know how can I test that. Some existing tests like the continuations one can be changed to use a new |




The commit message explains the reason of the crash. This fix also points that the paging system in the extractor has to be rewritten, as we have multiple IDs systems and we have to pass custom data in some pages.
Fixes TeamNewPipe/NewPipe#13593
Supersedes #1510