summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>2023-07-26 18:53:29 -0700
committerChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>2023-10-16 00:32:24 -0400
commit0bd415158f44c2411bc04cd01ff606e15c3c7d2a (patch)
tree6e7468e2d8e632a12a55fff8c1b5c33d22126ded
parent069e91d2a609b1df94bdfbb693335969b2a281d8 (diff)
downloadinvidious-0bd415158f44c2411bc04cd01ff606e15c3c7d2a.tar.gz
invidious-0bd415158f44c2411bc04cd01ff606e15c3c7d2a.tar.bz2
invidious-0bd415158f44c2411bc04cd01ff606e15c3c7d2a.zip
Fix importing FreeTube subscriptions with multiple profiles
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
-rw-r--r--src/invidious/user/imports.cr8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/invidious/user/imports.cr b/src/invidious/user/imports.cr
index 86d0ce6e..0d21bc44 100644
--- a/src/invidious/user/imports.cr
+++ b/src/invidious/user/imports.cr
@@ -228,8 +228,12 @@ struct Invidious::User
subs = matches.map(&.["channel_id"])
if subs.empty?
- data = JSON.parse(body)["subscriptions"]
- subs = data.as_a.map(&.["id"].as_s)
+ profiles = body.split('\n', remove_empty: true)
+ profiles.each do |profile|
+ if data = JSON.parse(profile)["subscriptions"]?
+ subs += data.as_a.map(&.["id"].as_s)
+ end
+ end
end
user.subscriptions += subs