|
|
|
@ -168,14 +168,32 @@ namespace NzbDrone.Mono.Disk
|
|
|
|
|
|
|
|
|
|
protected override List<IMount> GetAllMounts()
|
|
|
|
|
{
|
|
|
|
|
return _procMountProvider.GetMounts()
|
|
|
|
|
.Concat(GetDriveInfoMounts()
|
|
|
|
|
.Select(d => new DriveInfoMount(d, FindDriveType.Find(d.DriveFormat)))
|
|
|
|
|
.Where(d => d.DriveType == DriveType.Fixed ||
|
|
|
|
|
d.DriveType == DriveType.Network ||
|
|
|
|
|
d.DriveType == DriveType.Removable))
|
|
|
|
|
.DistinctBy(v => v.RootDirectory)
|
|
|
|
|
.ToList();
|
|
|
|
|
var mounts = new List<IMount>();
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
mounts.AddRange(_procMountProvider.GetMounts());
|
|
|
|
|
}
|
|
|
|
|
catch (Exception e)
|
|
|
|
|
{
|
|
|
|
|
_logger.Warn(e, $"Unable to get mounts: {e.Message}");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
mounts.AddRange(GetDriveInfoMounts()
|
|
|
|
|
.Select(d => new DriveInfoMount(d, FindDriveType.Find(d.DriveFormat)))
|
|
|
|
|
.Where(d => d.DriveType == DriveType.Fixed ||
|
|
|
|
|
d.DriveType == DriveType.Network ||
|
|
|
|
|
d.DriveType == DriveType.Removable));
|
|
|
|
|
}
|
|
|
|
|
catch (Exception e)
|
|
|
|
|
{
|
|
|
|
|
_logger.Warn(e, $"Unable to get drive mounts: {e.Message}");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return mounts.DistinctBy(v => v.RootDirectory)
|
|
|
|
|
.ToList();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected override bool IsSpecialMount(IMount mount)
|
|
|
|
|