update dlna profile header checks
This commit is contained in:
parent
4a24490752
commit
9e568bf99a
|
@ -251,7 +251,8 @@ namespace MediaBrowser.Dlna
|
|||
case HeaderMatchType.Substring:
|
||||
return value.IndexOf(header.Value, StringComparison.OrdinalIgnoreCase) != -1;
|
||||
case HeaderMatchType.Regex:
|
||||
return Regex.IsMatch(value, header.Value, RegexOptions.IgnoreCase);
|
||||
// Reports of IgnoreCase not working on linux so try it a couple different ways.
|
||||
return Regex.IsMatch(value, header.Value, RegexOptions.IgnoreCase) || Regex.IsMatch(value.ToUpper(), header.Value.ToUpper(), RegexOptions.IgnoreCase);
|
||||
default:
|
||||
throw new ArgumentException("Unrecognized HeaderMatchType");
|
||||
}
|
||||
|
@ -280,7 +281,7 @@ namespace MediaBrowser.Dlna
|
|||
{
|
||||
try
|
||||
{
|
||||
return _fileSystem.GetFiles(path)
|
||||
return _fileSystem.GetFiles(path)
|
||||
.Where(i => string.Equals(i.Extension, ".xml", StringComparison.OrdinalIgnoreCase))
|
||||
.Select(i => ParseProfileXmlFile(i.FullName, type))
|
||||
.Where(i => i != null)
|
||||
|
@ -318,7 +319,7 @@ namespace MediaBrowser.Dlna
|
|||
throw new ArgumentNullException("id");
|
||||
}
|
||||
|
||||
var info = GetProfileInfosInternal().First(i => string.Equals(i.Info.Id, id));
|
||||
var info = GetProfileInfosInternal().First(i => string.Equals(i.Info.Id, id, StringComparison.OrdinalIgnoreCase));
|
||||
|
||||
return ParseProfileXmlFile(info.Path, info.Info.Type);
|
||||
}
|
||||
|
@ -342,7 +343,7 @@ namespace MediaBrowser.Dlna
|
|||
{
|
||||
try
|
||||
{
|
||||
return _fileSystem.GetFiles(path)
|
||||
return _fileSystem.GetFiles(path)
|
||||
.Where(i => string.Equals(i.Extension, ".xml", StringComparison.OrdinalIgnoreCase))
|
||||
.Select(i => new InternalProfileInfo
|
||||
{
|
||||
|
@ -384,7 +385,7 @@ namespace MediaBrowser.Dlna
|
|||
|
||||
if (!fileInfo.Exists || fileInfo.Length != stream.Length)
|
||||
{
|
||||
_fileSystem.CreateDirectory(systemProfilesPath);
|
||||
_fileSystem.CreateDirectory(systemProfilesPath);
|
||||
|
||||
using (var fileStream = _fileSystem.GetFileStream(path, FileMode.Create, FileAccess.Write, FileShare.Read))
|
||||
{
|
||||
|
@ -395,12 +396,12 @@ namespace MediaBrowser.Dlna
|
|||
}
|
||||
|
||||
// Not necessary, but just to make it easy to find
|
||||
_fileSystem.CreateDirectory(UserProfilesPath);
|
||||
_fileSystem.CreateDirectory(UserProfilesPath);
|
||||
}
|
||||
|
||||
public void DeleteProfile(string id)
|
||||
{
|
||||
var info = GetProfileInfosInternal().First(i => string.Equals(id, i.Info.Id));
|
||||
var info = GetProfileInfosInternal().First(i => string.Equals(id, i.Info.Id, StringComparison.OrdinalIgnoreCase));
|
||||
|
||||
if (info.Info.Type == DeviceProfileType.System)
|
||||
{
|
||||
|
@ -448,7 +449,7 @@ namespace MediaBrowser.Dlna
|
|||
{
|
||||
_fileSystem.DeleteFile(current.Path);
|
||||
}
|
||||
|
||||
|
||||
_xmlSerializer.SerializeToFile(profile, path);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user