aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs')
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs18
1 files changed, 8 insertions, 10 deletions
diff --git a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs
index c728e2ce2..d9bc35822 100644
--- a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs
@@ -246,7 +246,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
var person = item as Person;
if (person != null)
{
- person.ProductionLocations = new List<string> { val };
+ person.ProductionLocations = new string[] { val };
}
}
@@ -267,13 +267,11 @@ namespace MediaBrowser.LocalMetadata.Parsers
case "LockedFields":
{
- var fields = new List<MetadataFields>();
-
var val = reader.ReadElementContentAsString();
if (!string.IsNullOrWhiteSpace(val))
{
- var list = val.Split('|').Select(i =>
+ item.LockedFields = val.Split('|').Select(i =>
{
MetadataFields field;
@@ -284,13 +282,9 @@ namespace MediaBrowser.LocalMetadata.Parsers
return null;
- }).Where(i => i.HasValue).Select(i => i.Value);
-
- fields.AddRange(list);
+ }).Where(i => i.HasValue).Select(i => i.Value).ToArray();
}
- item.LockedFields = fields;
-
break;
}
@@ -933,6 +927,8 @@ namespace MediaBrowser.LocalMetadata.Parsers
reader.MoveToContent();
reader.Read();
+ var tags = new List<string>();
+
// Loop through each element
while (!reader.EOF && reader.ReadState == ReadState.Interactive)
{
@@ -946,7 +942,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
if (!string.IsNullOrWhiteSpace(tag))
{
- item.AddTag(tag);
+ tags.Add(tag);
}
break;
}
@@ -961,6 +957,8 @@ namespace MediaBrowser.LocalMetadata.Parsers
reader.Read();
}
}
+
+ item.Tags = tags.Distinct(StringComparer.Ordinal).ToArray();
}
/// <summary>