summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/invidious/playlists.cr19
1 files changed, 3 insertions, 16 deletions
diff --git a/src/invidious/playlists.cr b/src/invidious/playlists.cr
index a4ef212f..1718bc2f 100644
--- a/src/invidious/playlists.cr
+++ b/src/invidious/playlists.cr
@@ -439,17 +439,11 @@ def get_playlist_videos(db, playlist, offset, locale = nil, continuation = nil)
else
videos = [] of PlaylistVideo
- original_offset = offset
until videos.size >= 100 || videos.size == playlist.video_count || offset >= playlist.video_count
- if offset >= 100
- # Normalize offset to match youtube's behavior (100 videos chunck per request)
- normalized_offset = (offset / 100).to_i64 * 100_i64
- ctoken = produce_playlist_continuation(playlist.id, normalized_offset)
- initial_data = request_youtube_api_browse(ctoken)
- else
- initial_data = request_youtube_api_browse("VL" + playlist.id, params: "")
- end
+ # 100 videos per request
+ ctoken = produce_playlist_continuation(playlist.id, offset)
+ initial_data = request_youtube_api_browse(ctoken)
videos += extract_playlist_videos(initial_data)
if continuation
@@ -459,13 +453,6 @@ def get_playlist_videos(db, playlist, offset, locale = nil, continuation = nil)
break
end
end
- else
- until videos[0].index == original_offset
- videos.shift
- if videos.size == 0
- break
- end
- end
end
if videos.size > 0 && offset == 0