From 95f4d71c683b025781fa234761e8409319f88f48 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Mon, 9 Jun 2014 18:26:49 -0700 Subject: [PATCH] Fixed issue trying getting parent of drive --- .../SabnzbdTests/SabnzbdFixture.cs | 13 +++++++++++++ .../Download/Clients/Sabnzbd/Sabnzbd.cs | 2 +- .../Download/Clients/Sabnzbd/SabnzbdProxy.cs | 1 - 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/NzbDrone.Core.Test/Download/DownloadClientTests/SabnzbdTests/SabnzbdFixture.cs b/src/NzbDrone.Core.Test/Download/DownloadClientTests/SabnzbdTests/SabnzbdFixture.cs index 9a5760d62..3fd83618e 100644 --- a/src/NzbDrone.Core.Test/Download/DownloadClientTests/SabnzbdTests/SabnzbdFixture.cs +++ b/src/NzbDrone.Core.Test/Download/DownloadClientTests/SabnzbdTests/SabnzbdFixture.cs @@ -268,5 +268,18 @@ namespace NzbDrone.Core.Test.Download.DownloadClientTests.SabnzbdTests result.OutputPath.Should().Be(@"C:\sorted\Droned.S01E01.Pilot.1080p.WEB-DL-DRONE".AsOsAgnostic()); } + + [Test] + public void should_not_blow_up_if_storage_is_drive_root() + { + _completed.Items.First().Storage = @"C:\".AsOsAgnostic(); + + WithQueue(null); + WithHistory(_completed); + + var result = Subject.GetItems().Single(); + + result.OutputPath.Should().Be(@"C:\".AsOsAgnostic()); + } } } diff --git a/src/NzbDrone.Core/Download/Clients/Sabnzbd/Sabnzbd.cs b/src/NzbDrone.Core/Download/Clients/Sabnzbd/Sabnzbd.cs index 31dec7669..687752b2c 100644 --- a/src/NzbDrone.Core/Download/Clients/Sabnzbd/Sabnzbd.cs +++ b/src/NzbDrone.Core/Download/Clients/Sabnzbd/Sabnzbd.cs @@ -162,7 +162,7 @@ namespace NzbDrone.Core.Download.Clients.Sabnzbd if (!sabHistoryItem.Storage.IsNullOrWhiteSpace()) { var parent = Directory.GetParent(sabHistoryItem.Storage); - if (parent.Name == sabHistoryItem.Title) + if (parent != null && parent.Name == sabHistoryItem.Title) { historyItem.OutputPath = parent.FullName; } diff --git a/src/NzbDrone.Core/Download/Clients/Sabnzbd/SabnzbdProxy.cs b/src/NzbDrone.Core/Download/Clients/Sabnzbd/SabnzbdProxy.cs index 52259fd7a..1fe9ce8ec 100644 --- a/src/NzbDrone.Core/Download/Clients/Sabnzbd/SabnzbdProxy.cs +++ b/src/NzbDrone.Core/Download/Clients/Sabnzbd/SabnzbdProxy.cs @@ -6,7 +6,6 @@ using NzbDrone.Common; using NzbDrone.Common.Extensions; using NzbDrone.Common.Serializer; using NzbDrone.Core.Download.Clients.Sabnzbd.Responses; -using NzbDrone.Core.Instrumentation.Extensions; using RestSharp; namespace NzbDrone.Core.Download.Clients.Sabnzbd