Improve error msg when having bad names xml file

This commit is contained in:
Nikolaj Olsson 2020-11-23 21:26:41 +01:00
parent 9ecdd5376a
commit e34a716b96

View File

@ -102,40 +102,43 @@ namespace Nikse.SubtitleEdit.Core.Dictionaries
return; return;
} }
using (var reader = XmlReader.Create(fileNameOrUrl)) try
{ {
reader.MoveToContent(); using (var reader = XmlReader.Create(fileNameOrUrl))
while (reader.Read())
{ {
if (reader.NodeType == XmlNodeType.Element && !reader.IsEmptyElement) reader.MoveToContent();
while (reader.Read())
{ {
if (reader.Name == "name") if (reader.NodeType == XmlNodeType.Element && !reader.IsEmptyElement)
{ {
var name = reader.ReadElementContentAsString().Trim(); if (reader.Name == "name")
if (name.Length > 0)
{ {
if (name.Contains(' ')) var name = reader.ReadElementContentAsString().Trim();
if (name.Length > 0)
{ {
_namesMultiList.Add(name); if (name.Contains(' '))
} {
else _namesMultiList.Add(name);
{ }
_namesList.Add(name); else
{
_namesList.Add(name);
}
} }
} }
} else if (reader.Name == "blacklist")
else if (reader.Name == "blacklist")
{
while (reader.Read() && reader.NodeType != XmlNodeType.EndElement)
{ {
if (reader.NodeType == XmlNodeType.Element && !reader.IsEmptyElement) while (reader.Read() && reader.NodeType != XmlNodeType.EndElement)
{ {
if (reader.Name == "name") if (reader.NodeType == XmlNodeType.Element && !reader.IsEmptyElement)
{ {
var name = reader.ReadElementContentAsString().Trim(); if (reader.Name == "name")
if (name.Length > 0)
{ {
_blackList.Add(name); var name = reader.ReadElementContentAsString().Trim();
if (name.Length > 0)
{
_blackList.Add(name);
}
} }
} }
} }
@ -144,6 +147,10 @@ namespace Nikse.SubtitleEdit.Core.Dictionaries
} }
} }
} }
catch (Exception ex)
{
throw new Exception("Unable to read name list file: " + fileNameOrUrl, ex);
}
} }
public bool Remove(string name) public bool Remove(string name)