Fixed: Validate if equals or child for startup folder

This commit is contained in:
Qstick 2022-06-05 20:07:47 -05:00 committed by Mark McDowall
parent 97925feed9
commit 0991cfe27e
1 changed files with 19 additions and 2 deletions

View File

@ -10,7 +10,7 @@ namespace NzbDrone.Core.Validation.Paths
public StartupFolderValidator(IAppFolderInfo appFolderInfo) public StartupFolderValidator(IAppFolderInfo appFolderInfo)
: base("Path cannot be an ancestor of the start up folder") : base("Path cannot be {relationship} the start up folder")
{ {
_appFolderInfo = appFolderInfo; _appFolderInfo = appFolderInfo;
} }
@ -19,7 +19,24 @@ namespace NzbDrone.Core.Validation.Paths
{ {
if (context.PropertyValue == null) return true; if (context.PropertyValue == null) 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;
} }
} }
} }