1
0
mirror of https://github.com/Radarr/Radarr.git synced 2024-09-17 15:02:34 +02:00

Fixed exception in MountCheck if RootDirectory cannot be found.

This commit is contained in:
Taloth Saldono 2017-05-10 22:48:36 +02:00
parent db15949704
commit 95c81f8905
3 changed files with 6 additions and 5 deletions

View File

@ -86,7 +86,7 @@ public void paths_should_not_be_equal(string first, string second)
{ {
first.AsOsAgnostic().PathEquals(second.AsOsAgnostic()).Should().BeFalse(); first.AsOsAgnostic().PathEquals(second.AsOsAgnostic()).Should().BeFalse();
} }
[Test] [Test]
public void should_return_false_when_not_a_child() public void should_return_false_when_not_a_child()
{ {
@ -113,6 +113,7 @@ public void should_return_true_when_folder_is_parent_of_a_file()
[TestCase(@"C:\Test\", @"C:\Test\mydir")] [TestCase(@"C:\Test\", @"C:\Test\mydir")]
[TestCase(@"C:\Test\", @"C:\Test\mydir\")] [TestCase(@"C:\Test\", @"C:\Test\mydir\")]
[TestCase(@"C:\Test", @"C:\Test\30.Rock.S01E01.Pilot.avi")] [TestCase(@"C:\Test", @"C:\Test\30.Rock.S01E01.Pilot.avi")]
[TestCase(@"C:\", @"C:\Test\30.Rock.S01E01.Pilot.avi")]
public void path_should_be_parent(string parentPath, string childPath) public void path_should_be_parent(string parentPath, string childPath)
{ {
parentPath.AsOsAgnostic().IsParentPath(childPath.AsOsAgnostic()).Should().BeTrue(); parentPath.AsOsAgnostic().IsParentPath(childPath.AsOsAgnostic()).Should().BeTrue();

View File

@ -80,11 +80,11 @@ public static string GetParentPath(this string childPath)
public static bool IsParentPath(this string parentPath, string childPath) public static bool IsParentPath(this string parentPath, string childPath)
{ {
if (parentPath != "/") if (parentPath != "/" && !parentPath.EndsWith(":\\"))
{ {
parentPath = parentPath.TrimEnd(Path.DirectorySeparatorChar); parentPath = parentPath.TrimEnd(Path.DirectorySeparatorChar);
} }
if (childPath != "/") if (childPath != "/" && !parentPath.EndsWith(":\\"))
{ {
childPath = childPath.TrimEnd(Path.DirectorySeparatorChar); childPath = childPath.TrimEnd(Path.DirectorySeparatorChar);
} }
@ -276,4 +276,4 @@ public static string GetNlogConfigPath(this IAppFolderInfo appFolderInfo)
return Path.Combine(appFolderInfo.StartUpFolder, NLOG_CONFIG_FILE); return Path.Combine(appFolderInfo.StartUpFolder, NLOG_CONFIG_FILE);
} }
} }
} }

View File

@ -21,8 +21,8 @@ public override HealthCheck Check()
// Not best for optimization but due to possible symlinks and junctions, we get mounts based on series path so internals can handle mount resolution. // Not best for optimization but due to possible symlinks and junctions, we get mounts based on series path so internals can handle mount resolution.
var mounts = _seriesService.GetAllSeries() var mounts = _seriesService.GetAllSeries()
.Select(series => _diskProvider.GetMount(series.Path)) .Select(series => _diskProvider.GetMount(series.Path))
.Where(m => m != null && m.MountOptions != null && m.MountOptions.IsReadOnly)
.DistinctBy(m => m.RootDirectory) .DistinctBy(m => m.RootDirectory)
.Where(m => m.MountOptions != null && m.MountOptions.IsReadOnly)
.ToList(); .ToList();
if (mounts.Any()) if (mounts.Any())