From 7e1c96479782f3adb94f36d221f8936d1f793144 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Wed, 26 Nov 2025 18:08:57 -0800 Subject: [PATCH] Don't send full paths to Skyhook for searches --- .../SkyHook/InvalidSearchTermException.cs | 12 ++++++++++++ .../MetadataSource/SkyHook/SkyHookProxy.cs | 6 ++++++ 2 files changed, 18 insertions(+) create mode 100644 src/NzbDrone.Core/MetadataSource/SkyHook/InvalidSearchTermException.cs diff --git a/src/NzbDrone.Core/MetadataSource/SkyHook/InvalidSearchTermException.cs b/src/NzbDrone.Core/MetadataSource/SkyHook/InvalidSearchTermException.cs new file mode 100644 index 000000000..103d2c3d6 --- /dev/null +++ b/src/NzbDrone.Core/MetadataSource/SkyHook/InvalidSearchTermException.cs @@ -0,0 +1,12 @@ +using System.Net; +using NzbDrone.Core.Exceptions; + +namespace NzbDrone.Core.MetadataSource.SkyHook; + +public class InvalidSearchTermException : NzbDroneClientException +{ + public InvalidSearchTermException(string message, params object[] args) + : base(HttpStatusCode.BadRequest, message, args) + { + } +} diff --git a/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs b/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs index c97c524dc..883a84c45 100644 --- a/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs +++ b/src/NzbDrone.Core/MetadataSource/SkyHook/SkyHookProxy.cs @@ -5,6 +5,7 @@ using System.Net; using NLog; using NzbDrone.Common.Cloud; +using NzbDrone.Common.Disk; using NzbDrone.Common.Extensions; using NzbDrone.Common.Http; using NzbDrone.Core.DataAugmentation.DailySeries; @@ -106,6 +107,11 @@ public List SearchForNewSeriesByTmdbId(int tmdbId) public List SearchForNewSeries(string title) { + if (title.IsPathValid(PathValidationType.AnyOs)) + { + throw new InvalidSearchTermException("Invalid search term '{0}'", title); + } + try { var lowerTitle = title.ToLowerInvariant();