From 581979c5a8dd88a05609b7fb22ef69fe5efeaf41 Mon Sep 17 00:00:00 2001 From: imSp4rky Date: Wed, 12 Aug 2026 07:23:59 -0600 Subject: [PATCH] fix(dl): reset per-title language and range selection each iteration --- unshackle/commands/dl.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/unshackle/commands/dl.py b/unshackle/commands/dl.py index ef3095c3..237777f6 100644 --- a/unshackle/commands/dl.py +++ b/unshackle/commands/dl.py @@ -2350,7 +2350,10 @@ class dl: if music_collection_mode: raise click.ClickException("Music collections require grouped audio downloads.") + base_selection = (v_lang, a_lang, s_lang, range_) + for i, title in enumerate(titles): + v_lang, a_lang, s_lang, range_ = base_selection if isinstance(title, Episode) and latest_episode and latest_episode_id: # If --latest-episode is set, only process the latest episode if f"{title.season}x{title.number}" != latest_episode_id: @@ -2571,7 +2574,7 @@ class dl: exact_match=exact_lang, ) title.tracks.sort_subtitles( - by_language=resolve_sort_langs([*subtitle_priority, *s_lang], title.language), + by_language=resolve_sort_langs([*subtitle_priority, *(s_lang or [])], title.language), type_priority=config.subtitle.get("type_priority"), group_by=config.subtitle.get("group_by"), exact_match=exact_lang,