diff options
| author | Shadowghost <Shadowghost@users.noreply.github.com> | 2025-11-02 21:58:45 -0500 |
|---|---|---|
| committer | Joshua M. Boniface <joshua@boniface.me> | 2025-11-02 21:58:45 -0500 |
| commit | 87b02b13166b5dc8cd59e273e1c82339db940a27 (patch) | |
| tree | dd8731a71a589bc0a004816511bcc8e1eef76ea0 | |
| parent | 871de372ff89597c9b1e9ca10ff52e2b0a8a7983 (diff) | |
Backport pull request #15326 from jellyfin/release-10.11.z
Skip too large extracted season numbers
Original-merge: e7dbb3afec3282c556e4fe35d9376ecaa4417171
Merged-by: crobibero <cody@robibe.ro>
Backported-by: Joshua M. Boniface <joshua@boniface.me>
| -rw-r--r-- | Emby.Naming/TV/SeasonPathParser.cs | 6 | ||||
| -rw-r--r-- | tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/Emby.Naming/TV/SeasonPathParser.cs b/Emby.Naming/TV/SeasonPathParser.cs index 90aae2d48..eafb09a6a 100644 --- a/Emby.Naming/TV/SeasonPathParser.cs +++ b/Emby.Naming/TV/SeasonPathParser.cs @@ -113,8 +113,10 @@ namespace Emby.Naming.TV var numberString = match.Groups["seasonnumber"]; if (numberString.Success) { - var seasonNumber = int.Parse(numberString.Value, CultureInfo.InvariantCulture); - return (seasonNumber, true); + if (int.TryParse(numberString.Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var seasonNumber)) + { + return (seasonNumber, true); + } } return (null, false); diff --git a/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs b/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs index 7671166ff..0c3671f4f 100644 --- a/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs +++ b/tests/Jellyfin.Naming.Tests/TV/SeasonPathParserTests.cs @@ -66,6 +66,9 @@ public class SeasonPathParserTests [InlineData("/Drive/SPECIALS", "/Drive", 0, true)] [InlineData("/Drive/Episode 1 Season 2", "/Drive", null, false)] [InlineData("/Drive/Episode 1 SEASON 2", "/Drive", null, false)] + [InlineData("/media/YouTube/Devyn Johnston/2024-01-24 4070 Ti SUPER in under 7 minutes", "/media/YouTube/Devyn Johnston", null, false)] + [InlineData("/media/YouTube/Devyn Johnston/2025-01-28 5090 vs 2 SFF Cases", "/media/YouTube/Devyn Johnston", null, false)] + [InlineData("/Drive/202401244070", "/Drive", null, false)] public void GetSeasonNumberFromPathTest(string path, string? parentPath, int? seasonNumber, bool isSeasonDirectory) { var result = SeasonPathParser.Parse(path, parentPath, true, true); |
