mirror of
https://github.com/lidarr/lidarr.git
synced 2025-08-14 02:37:08 -07:00
Fixed: Filter mapped drives when running from service
This commit is contained in:
parent
70dc4d86dc
commit
68aaa49e9f
6 changed files with 51 additions and 4 deletions
|
@ -50,6 +50,7 @@ namespace Lidarr.Api.V1.Artist
|
|||
IManageCommandQueue commandQueueManager,
|
||||
IRootFolderService rootFolderService,
|
||||
RootFolderValidator rootFolderValidator,
|
||||
MappedNetworkDriveValidator mappedNetworkDriveValidator,
|
||||
ArtistPathValidator artistPathValidator,
|
||||
ArtistExistsValidator artistExistsValidator,
|
||||
ArtistAncestorValidator artistAncestorValidator,
|
||||
|
@ -83,6 +84,7 @@ namespace Lidarr.Api.V1.Artist
|
|||
.Cascade(CascadeMode.StopOnFirstFailure)
|
||||
.IsValidPath()
|
||||
.SetValidator(rootFolderValidator)
|
||||
.SetValidator(mappedNetworkDriveValidator)
|
||||
.SetValidator(artistPathValidator)
|
||||
.SetValidator(artistAncestorValidator)
|
||||
.SetValidator(systemFolderValidator)
|
||||
|
|
|
@ -111,6 +111,10 @@
|
|||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Lidarr.Api.V1\Lidarr.Api.V1.csproj">
|
||||
<Project>{7140ff1f-79be-492f-9188-b21a050bf708}</Project>
|
||||
<Name>Lidarr.Api.V1</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\NzbDrone.Common\NzbDrone.Common.csproj">
|
||||
<Project>{F2BE0FDF-6E47-4827-A420-DD4EF82407F8}</Project>
|
||||
<Name>NzbDrone.Common</Name>
|
||||
|
|
|
@ -15,6 +15,7 @@ namespace NzbDrone.Common.Disk
|
|||
public class FileSystemLookupService : IFileSystemLookupService
|
||||
{
|
||||
private readonly IDiskProvider _diskProvider;
|
||||
private readonly IRuntimeInfo _runtimeInfo;
|
||||
|
||||
private readonly HashSet<string> _setToRemove = new HashSet<string>
|
||||
{
|
||||
|
@ -46,9 +47,10 @@ namespace NzbDrone.Common.Disk
|
|||
"@eadir"
|
||||
};
|
||||
|
||||
public FileSystemLookupService(IDiskProvider diskProvider)
|
||||
public FileSystemLookupService(IDiskProvider diskProvider, IRuntimeInfo runtimeInfo)
|
||||
{
|
||||
_diskProvider = diskProvider;
|
||||
_runtimeInfo = runtimeInfo;
|
||||
}
|
||||
|
||||
public FileSystemResult LookupContents(string query, bool includeFiles, bool allowFoldersWithoutTrailingSlashes)
|
||||
|
@ -88,6 +90,16 @@ namespace NzbDrone.Common.Disk
|
|||
private List<FileSystemModel> GetDrives()
|
||||
{
|
||||
return _diskProvider.GetMounts()
|
||||
.Where(d =>
|
||||
{
|
||||
// Fow Windows Services, exclude mapped network drives.
|
||||
if (_runtimeInfo.IsWindowsService)
|
||||
{
|
||||
return d.DriveType != DriveType.Network;
|
||||
}
|
||||
|
||||
return true;
|
||||
})
|
||||
.Select(d => new FileSystemModel
|
||||
{
|
||||
Type = FileSystemEntityType.Drive,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue