Merge pull request #6860 from cvium/fix_xml_endless_loops
This commit is contained in:
commit
fa366f0099
|
@ -319,6 +319,12 @@ namespace MediaBrowser.Providers.Music
|
|||
{
|
||||
case "name-credit":
|
||||
{
|
||||
if (reader.IsEmptyElement)
|
||||
{
|
||||
reader.Read();
|
||||
break;
|
||||
}
|
||||
|
||||
using var subReader = reader.ReadSubtree();
|
||||
return ParseArtistNameCredit(subReader);
|
||||
}
|
||||
|
@ -355,6 +361,12 @@ namespace MediaBrowser.Providers.Music
|
|||
{
|
||||
case "artist":
|
||||
{
|
||||
if (reader.IsEmptyElement)
|
||||
{
|
||||
reader.Read();
|
||||
break;
|
||||
}
|
||||
|
||||
var id = reader.GetAttribute("id");
|
||||
using var subReader = reader.ReadSubtree();
|
||||
return ParseArtistArtistCredit(subReader, id);
|
||||
|
@ -457,8 +469,8 @@ namespace MediaBrowser.Providers.Music
|
|||
};
|
||||
|
||||
using var reader = XmlReader.Create(oReader, settings);
|
||||
reader.MoveToContent();
|
||||
reader.Read();
|
||||
await reader.MoveToContentAsync().ConfigureAwait(false);
|
||||
await reader.ReadAsync().ConfigureAwait(false);
|
||||
|
||||
// Loop through each element
|
||||
while (!reader.EOF && reader.ReadState == ReadState.Interactive)
|
||||
|
@ -471,7 +483,7 @@ namespace MediaBrowser.Providers.Music
|
|||
{
|
||||
if (reader.IsEmptyElement)
|
||||
{
|
||||
reader.Read();
|
||||
await reader.ReadAsync().ConfigureAwait(false);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -481,14 +493,14 @@ namespace MediaBrowser.Providers.Music
|
|||
|
||||
default:
|
||||
{
|
||||
reader.Skip();
|
||||
await reader.SkipAsync().ConfigureAwait(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
reader.Read();
|
||||
await reader.ReadAsync().ConfigureAwait(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -755,6 +767,12 @@ namespace MediaBrowser.Providers.Music
|
|||
|
||||
case "artist-credit":
|
||||
{
|
||||
if (reader.IsEmptyElement)
|
||||
{
|
||||
reader.Read();
|
||||
break;
|
||||
}
|
||||
|
||||
using var subReader = reader.ReadSubtree();
|
||||
var artist = ParseArtistCredit(subReader);
|
||||
|
||||
|
|
|
@ -784,7 +784,13 @@ namespace MediaBrowser.XbmcMetadata.Parsers
|
|||
|
||||
case "fanart":
|
||||
{
|
||||
var subtree = reader.ReadSubtree();
|
||||
if (reader.IsEmptyElement)
|
||||
{
|
||||
reader.Read();
|
||||
break;
|
||||
}
|
||||
|
||||
using var subtree = reader.ReadSubtree();
|
||||
if (!subtree.ReadToDescendant("thumb"))
|
||||
{
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue
Block a user