From a9e1204a9bc40d50a08e866143ea23b81a5bb01c Mon Sep 17 00:00:00 2001 From: Qstick Date: Sun, 5 Jun 2022 20:07:47 -0500 Subject: [PATCH] Fixed: Validate if equals or child for startup folder (cherry picked from commit 0991cfe27efd6ddb533227b25754661e18d7e9ad) --- .../Paths/StartupFolderValidator.cs | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/NzbDrone.Core/Validation/Paths/StartupFolderValidator.cs b/src/NzbDrone.Core/Validation/Paths/StartupFolderValidator.cs index d2cd03780..0243923f1 100644 --- a/src/NzbDrone.Core/Validation/Paths/StartupFolderValidator.cs +++ b/src/NzbDrone.Core/Validation/Paths/StartupFolderValidator.cs @@ -13,7 +13,7 @@ namespace NzbDrone.Core.Validation.Paths _appFolderInfo = appFolderInfo; } - protected override string GetDefaultMessageTemplate() => "Path cannot be an ancestor of the start up folder"; + protected override string GetDefaultMessageTemplate() => "Path cannot be {relationship} the start up folder"; protected override bool IsValid(PropertyValidatorContext context) { @@ -22,7 +22,24 @@ namespace NzbDrone.Core.Validation.Paths return true; } - return !_appFolderInfo.StartUpFolder.IsParentPath(context.PropertyValue.ToString()); + var startupFolder = _appFolderInfo.StartUpFolder; + var folder = context.PropertyValue.ToString(); + + if (startupFolder.PathEquals(folder)) + { + context.MessageFormatter.AppendArgument("relationship", "set to"); + + return false; + } + + if (startupFolder.IsParentPath(folder)) + { + context.MessageFormatter.AppendArgument("relationship", "child of"); + + return false; + } + + return true; } } }