summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authormorpheus65535 <[email protected]>2022-05-04 06:35:49 -0400
committermorpheus65535 <[email protected]>2022-05-04 06:35:49 -0400
commit6e7423c9b5b75cd5f74ae0bc7299e2eb39f0b5a2 (patch)
tree03bf485fd6d08ecd33b9424598169fae272db661
parent2cb3e36f8d342205495260960fd747990d487838 (diff)
parentce33b4f5fd75450bbd54351c712b87dfe915bb29 (diff)
downloadbazarr-6e7423c9b5b75cd5f74ae0bc7299e2eb39f0b5a2.tar.gz
bazarr-6e7423c9b5b75cd5f74ae0bc7299e2eb39f0b5a2.zip
Merge remote-tracking branch 'origin/development' into development
-rw-r--r--libs/subliminal_patch/providers/utils.py18
-rw-r--r--tests/subliminal_patch/test_utils.py2
2 files changed, 11 insertions, 9 deletions
diff --git a/libs/subliminal_patch/providers/utils.py b/libs/subliminal_patch/providers/utils.py
index 204fc8e80..42b3ca4e5 100644
--- a/libs/subliminal_patch/providers/utils.py
+++ b/libs/subliminal_patch/providers/utils.py
@@ -20,27 +20,29 @@ logger = logging.getLogger(__name__)
def _get_matching_sub(sub_names, forced=False, episode=None):
matching_sub = None
- for sub_name in sub_names:
- guess = guessit(sub_name, options={"single_value": True})
- is_movie = not guess.get("episode") or not episode
+ guess_options = {"single_value": True}
+ if episode is not None:
+ guess_options["type"] = "episode" # type: ignore
+
+ for sub_name in sub_names:
if not forced and os.path.splitext(sub_name.lower())[0].endswith("forced"):
logger.debug("Ignoring forced subtitle: %s", sub_name)
continue
# If it's a movie then get the first subtitle
- if is_movie:
+ if episode is None:
logger.debug("Movie subtitle found: %s", sub_name)
matching_sub = sub_name
break
- # Get episode info
- guess_episode = guess.get("episode")
- if guess_episode is None:
+ guess = guessit(sub_name, options=guess_options)
+
+ if guess.get("episode") is None:
logger.debug("No episode info found in file: %s", sub_name)
continue
- if episode == guess_episode:
+ if episode == guess["episode"]:
logger.debug("Episode matched: %s", sub_name)
matching_sub = sub_name
break
diff --git a/tests/subliminal_patch/test_utils.py b/tests/subliminal_patch/test_utils.py
index 2b89cee5e..de082a0bc 100644
--- a/tests/subliminal_patch/test_utils.py
+++ b/tests/subliminal_patch/test_utils.py
@@ -19,7 +19,7 @@ from rarfile import RarFile
1,
"breaking.bad.s01e01.srt",
),
- (("dummy.forced.srt",), True, 1, "dummy.forced.srt"),
+ (("dummy.forced.srt",), True, None, "dummy.forced.srt"),
(("dummy.forced.srt",), False, 1, None),
],
)