From f9022cbb5e6ff3e97080b5345058024fe4cc938d Mon Sep 17 00:00:00 2001
From: medariox <dariovizz@hotmail.it>
Date: Sun, 27 Dec 2015 16:47:32 +0100
Subject: [PATCH] Avoid iteration on empty exisiting_subtitles, renamed few
 variables, might fix issue #340

---
 sickbeard/subtitles.py | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/sickbeard/subtitles.py b/sickbeard/subtitles.py
index df3ca0b5b..4155bd8c6 100644
--- a/sickbeard/subtitles.py
+++ b/sickbeard/subtitles.py
@@ -195,11 +195,11 @@ def download_subtitles(subtitles_info):  # pylint: disable=too-many-locals, too-
                           subtitles_info['episode']), logger.DEBUG)
             return existing_subtitles, None
 
-        for sub in subtitles_list:
-            matches = sub.get_matches(video, hearing_impaired=False)
+        for subtitle in subtitles_list:
+            matches = subtitle.get_matches(video, hearing_impaired=False)
             score = subliminal.subtitle.compute_score(matches, video)
             logger.log(u"[%s] Subtitle score for %s is: %s (min=%s)"
-                       % (sub.provider_name, sub.id, score, user_score), logger.DEBUG)
+                       % (subtitle.provider_name, subtitle.id, score, user_score), logger.DEBUG)
 
         found_subtitles = pool.download_best_subtitles(subtitles_list, video, languages=languages,
                                                        hearing_impaired=sickbeard.SUBTITLES_HEARING_IMPAIRED,
@@ -238,7 +238,7 @@ def download_subtitles(subtitles_info):  # pylint: disable=too-many-locals, too-
             run_subs_extra_scripts(subtitles_info, subtitle, video, single=not sickbeard.SUBTITLES_MULTI)
 
     new_subtitles = sorted({subtitle.language.opensubtitles for subtitle in found_subtitles})
-    current_subtitles = sorted({subtitle for subtitle in new_subtitles + existing_subtitles})
+    current_subtitles = sorted({subtitle for subtitle in new_subtitles + existing_subtitles}) if existing_subtitles else new_subtitles
     if not sickbeard.SUBTITLES_MULTI and len(found_subtitles) == 1:
         new_code = found_subtitles[0].language.opensubtitles
         if new_code not in existing_subtitles:
@@ -371,11 +371,11 @@ class SubtitlesFinder(object):
                                                                            min_score=user_score,
                                                                            only_one=not sickbeard.SUBTITLES_MULTI)
 
-                            for sub in subtitles_list:
-                                matches = sub.get_matches(video, hearing_impaired=False)
+                            for subtitle in subtitles_list:
+                                matches = subtitle.get_matches(video, hearing_impaired=False)
                                 score = subliminal.subtitle.compute_score(matches, video)
                                 logger.log(u"[%s] Subtitle score for %s is: %s (min=%s)"
-                                           % (sub.provider_name, sub.id, score, user_score), logger.DEBUG)
+                                           % (subtitle.provider_name, subtitle.id, score, user_score), logger.DEBUG)
 
                             downloaded_languages = set()
                             for subtitle in found_subtitles:
-- 
GitLab