aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-08-13 10:43:51 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-08-13 10:43:51 -0400
commit3481d0d8e7a31ef911cb6a65aec32e7831e48df4 (patch)
treeed63b24d194a6aff7b591c441bc8963137c7fb49
parent242f0f21dc88b2300fc842f11996d84b3dfa5eb1 (diff)
validate chapters coming from xml
-rw-r--r--MediaBrowser.Controller/Providers/BaseItemXmlParser.cs9
1 files changed, 6 insertions, 3 deletions
diff --git a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
index 89bc9f2c2..59307f4e7 100644
--- a/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
+++ b/MediaBrowser.Controller/Providers/BaseItemXmlParser.cs
@@ -871,13 +871,16 @@ namespace MediaBrowser.Controller.Providers
}
}
- protected async Task FetchChaptersFromXmlNode(Guid itemId, XmlReader reader, IItemRepository repository, CancellationToken cancellationToken)
+ protected async Task FetchChaptersFromXmlNode(BaseItem item, XmlReader reader, IItemRepository repository, CancellationToken cancellationToken)
{
+ var runtime = item.RunTimeTicks ?? 0;
+
using (reader)
{
- var chapters = GetChaptersFromXmlNode(reader);
+ var chapters = GetChaptersFromXmlNode(reader)
+ .Where(i => i.StartPositionTicks >= 0 && i.StartPositionTicks < runtime);
- await repository.SaveChapters(itemId, chapters, cancellationToken).ConfigureAwait(false);
+ await repository.SaveChapters(item.Id, chapters, cancellationToken).ConfigureAwait(false);
}
}