Lidarr/src/NzbDrone.Common/PathEqualityComparer.cs

31 lines
723 B
C#
Raw Normal View History

2016-12-23 21:45:24 +00:00
using System.Collections.Generic;
using NzbDrone.Common.EnvironmentInfo;
using NzbDrone.Common.Extensions;
2013-08-21 01:17:06 +00:00
namespace NzbDrone.Common
{
public class PathEqualityComparer : IEqualityComparer<string>
2013-08-21 01:17:06 +00:00
{
2013-12-01 00:33:59 +00:00
public static readonly PathEqualityComparer Instance = new PathEqualityComparer();
private PathEqualityComparer()
{
}
2013-08-21 01:17:06 +00:00
public bool Equals(string x, string y)
{
return x.PathEquals(y);
}
public int GetHashCode(string obj)
{
2014-12-07 20:54:07 +00:00
if (OsInfo.IsWindows)
{
2014-12-07 20:54:07 +00:00
return obj.CleanFilePath().ToLower().GetHashCode();
}
2014-12-07 20:54:07 +00:00
return obj.CleanFilePath().GetHashCode();
2013-08-21 01:17:06 +00:00
}
}
}