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\\Test\", @"c:\test\test")]
|
||||
[Row(@"\\Testserver\Test\", @"\\testserver\test")]
|
||||
public void Normalize_Path(string dirty, string clean)
|
||||
{
|
||||
var result = Parser.NormalizePath(dirty);
|
||||
|
|
|
@ -130,11 +130,20 @@ namespace NzbDrone.Core
|
|||
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)
|
||||
{
|
||||
if (String.IsNullOrEmpty(path))
|
||||
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