From 6d8a209f2a223b1ebf5ae413efa6fc01c1a3a703 Mon Sep 17 00:00:00 2001 From: Prinz23 Date: Sun, 13 Aug 2023 20:33:07 +0200 Subject: [PATCH] sort backlog and manual segment search results episode number --- sickgear/search_queue.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sickgear/search_queue.py b/sickgear/search_queue.py index ff7a5037..f3b0d1ad 100644 --- a/sickgear/search_queue.py +++ b/sickgear/search_queue.py @@ -653,6 +653,11 @@ class ManualSearchQueueItem(BaseSearchQueueItem): search_result = search.search_providers(self.show_obj, [self.segment], True, try_other_searches=True) if search_result: + # sort results by season, episode number + try: + search_result.sort(key=lambda a: (a.ep_obj_list[0].season or 0, a.ep_obj_list[0].episode or 0)) + except (BaseException, Exception): + pass for result in search_result: # type: sickgear.classes.NZBSearchResult logger.log(f'Downloading {result.name} from {result.provider.name}') self.success = search.snatch_episode(result) @@ -734,6 +739,11 @@ class BacklogQueueItem(BaseSearchQueueItem): scheduled=self.standard_backlog) if search_result: + # sort results by season, episode number + try: + search_result.sort(key=lambda a: (a.ep_obj_list[0].season or 0, a.ep_obj_list[0].episode or 0)) + except (BaseException, Exception): + pass for result in search_result: # type: sickgear.classes.NZBSearchResult logger.log(f'Downloading {result.name} from {result.provider.name}') if search.snatch_episode(result):