diff --git a/MediaBrowser.Providers/Movies/MovieDbProvider.cs b/MediaBrowser.Providers/Movies/MovieDbProvider.cs index 18e4b0b129..69a23b84fb 100644 --- a/MediaBrowser.Providers/Movies/MovieDbProvider.cs +++ b/MediaBrowser.Providers/Movies/MovieDbProvider.cs @@ -192,8 +192,6 @@ namespace MediaBrowser.Providers.Movies new Regex(@"(?.*)") // last resort matches the whole string as the name }; - public const string AltMetaFileName = "movie.xml"; - protected override bool NeedsRefreshInternal(BaseItem item, BaseProviderInfo providerInfo) { if (HasAltMeta(item)) @@ -236,7 +234,10 @@ namespace MediaBrowser.Providers.Movies { return item.LocationType == LocationType.FileSystem && item.ResolveArgs.ContainsMetaFileByName("collection.xml"); } - return item.LocationType == LocationType.FileSystem && item.ResolveArgs.ContainsMetaFileByName(AltMetaFileName); + + var xmlFileName = MovieProviderFromXml.GetXmlFilename(item); + + return item.LocationType == LocationType.FileSystem && item.ResolveArgs.ContainsMetaFileByName(xmlFileName); } /// diff --git a/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs b/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs index 76fee746c1..762920955e 100644 --- a/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs +++ b/MediaBrowser.Providers/Movies/MovieProviderFromXml.cs @@ -52,6 +52,13 @@ namespace MediaBrowser.Providers.Movies get { return MetadataProviderPriority.First; } } + internal static string GetXmlFilename(BaseItem item) + { + var filename = "movie.xml"; + + return Path.Combine(item.MetaLocation, filename); + } + /// /// Override this to return the date that should be compared to the last refresh date /// to determine if this provider should be re-fetched. @@ -60,7 +67,7 @@ namespace MediaBrowser.Providers.Movies /// DateTime. protected override DateTime CompareDate(BaseItem item) { - var entry = item.ResolveArgs.GetMetaFileByPath(Path.Combine(item.MetaLocation, "movie.xml")); + var entry = item.ResolveArgs.GetMetaFileByPath(Path.Combine(item.MetaLocation, GetXmlFilename(item))); return entry != null ? entry.LastWriteTimeUtc : DateTime.MinValue; } @@ -86,7 +93,7 @@ namespace MediaBrowser.Providers.Movies { cancellationToken.ThrowIfCancellationRequested(); - var metadataFile = item.ResolveArgs.GetMetaFileByPath(Path.Combine(item.MetaLocation, "movie.xml")); + var metadataFile = item.ResolveArgs.GetMetaFileByPath(Path.Combine(item.MetaLocation, GetXmlFilename(item))); if (metadataFile != null) { diff --git a/MediaBrowser.Providers/Savers/MovieXmlSaver.cs b/MediaBrowser.Providers/Savers/MovieXmlSaver.cs index 9a4899cbaf..154b4ab601 100644 --- a/MediaBrowser.Providers/Savers/MovieXmlSaver.cs +++ b/MediaBrowser.Providers/Savers/MovieXmlSaver.cs @@ -119,11 +119,14 @@ namespace MediaBrowser.Providers.Savers public string GetSavePath(BaseItem item) { - var video = (Video)item; + if (item.IsInMixedFolder) + { + return Path.ChangeExtension(item.Path, ".xml"); + } - return video.IsInMixedFolder ? - Path.ChangeExtension(item.Path, ".xml") : - Path.Combine(item.MetaLocation, "movie.xml"); + var filename = MovieProviderFromXml.GetXmlFilename(item); + + return Path.Combine(item.MetaLocation, filename); } } }