aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-06-06 11:11:51 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-06-06 11:11:51 -0400
commit2f7b0b99da350f28252a05261304f8ef7778f491 (patch)
treedfed04c1374423030da16e35de32c79ed5c9864e
parent1ddc193e588f6231c327a769b580f48cba03a77f (diff)
support European encoding in xml files
-rw-r--r--MediaBrowser.Controller/Providers/BaseItemXmlParser.cs23
1 files changed, 14 insertions, 9 deletions
diff --git a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
index 5286ce0d2..1b5e303dd 100644
--- a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
+++ b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
@@ -1,5 +1,6 @@
using System.Globalization;
using System.IO;
+using System.Text;
using System.Text.RegularExpressions;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Entities;
@@ -65,19 +66,23 @@ namespace MediaBrowser.Controller.Providers
item.Genres.Clear();
item.People.Clear();
- // Use XmlReader for best performance
- using (var reader = XmlReader.Create(metadataFile, settings))
+ // Use european encoding as it will accept more characters
+ using (var streamReader = new StreamReader(metadataFile, Encoding.GetEncoding("ISO-8859-1")))
{
- reader.MoveToContent();
-
- // Loop through each element
- while (reader.Read())
+ // Use XmlReader for best performance
+ using (var reader = XmlReader.Create(streamReader, settings))
{
- cancellationToken.ThrowIfCancellationRequested();
+ reader.MoveToContent();
- if (reader.NodeType == XmlNodeType.Element)
+ // Loop through each element
+ while (reader.Read())
{
- FetchDataFromXmlNode(reader, item);
+ cancellationToken.ThrowIfCancellationRequested();
+
+ if (reader.NodeType == XmlNodeType.Element)
+ {
+ FetchDataFromXmlNode(reader, item);
+ }
}
}
}