mirror of https://github.com/lidarr/Lidarr
Parse UNC paths
This commit is contained in:
parent
153e013afb
commit
d5a869ac54
|
@ -58,6 +58,7 @@ namespace NzbDrone.Core.Test
|
||||||
[Row(@"c:\\test\\", @"c:\test")]
|
[Row(@"c:\\test\\", @"c:\test")]
|
||||||
[Row(@"C:\\Test\\", @"c:\test")]
|
[Row(@"C:\\Test\\", @"c:\test")]
|
||||||
[Row(@"C:\\Test\\Test\", @"c:\test\test")]
|
[Row(@"C:\\Test\\Test\", @"c:\test\test")]
|
||||||
|
[Row(@"\\Testserver\Test\", @"\\testserver\test")]
|
||||||
public void Normalize_Path(string dirty, string clean)
|
public void Normalize_Path(string dirty, string clean)
|
||||||
{
|
{
|
||||||
var result = Parser.NormalizePath(dirty);
|
var result = Parser.NormalizePath(dirty);
|
||||||
|
|
|
@ -130,11 +130,20 @@ namespace NzbDrone.Core
|
||||||
return NormalizeRegex.Replace(title, String.Empty).ToLower();
|
return NormalizeRegex.Replace(title, String.Empty).ToLower();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Note: changing case on path is a problem for running on mono/*nix
|
||||||
public static string NormalizePath(string path)
|
public static string NormalizePath(string path)
|
||||||
{
|
{
|
||||||
if (String.IsNullOrEmpty(path))
|
if (String.IsNullOrEmpty(path))
|
||||||
throw new ArgumentException("Path can not be null or empty");
|
throw new ArgumentException("Path can not be null or empty");
|
||||||
return new FileInfo(path).FullName.ToLower().Trim('/', '\\', ' ');
|
|
||||||
|
var info = new FileInfo(path);
|
||||||
|
|
||||||
|
if( info.FullName.StartsWith(@"\\")) //UNC
|
||||||
|
{
|
||||||
|
return info.FullName.ToLower().TrimEnd('/', '\\', ' ');
|
||||||
|
}
|
||||||
|
|
||||||
|
return info.FullName.ToLower().Trim('/', '\\', ' ');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue