|
@@ -447,18 +447,21 @@ namespace MediaBrowser.Providers.Manager
|
|
|
successfulProviderCount += remoteResult.Successes;
|
|
|
}
|
|
|
|
|
|
- // If no local providers and doing a full refresh, take data from item itself
|
|
|
- if (options.MetadataRefreshMode == MetadataRefreshMode.FullRefresh &&
|
|
|
- localProviders.Count == 0 &&
|
|
|
- refreshResult.UpdateType > ItemUpdateType.None)
|
|
|
+ if (providers.Any(i => !(i is ICustomMetadataProvider)))
|
|
|
{
|
|
|
- // TODO: If the new metadata from above has some blank data, this can cause old data to get filled into those empty fields
|
|
|
- MergeData(item, temp, new List<MetadataFields>(), false, true);
|
|
|
- }
|
|
|
+ // If no local providers and doing a full refresh, take data from item itself
|
|
|
+ if (options.MetadataRefreshMode == MetadataRefreshMode.FullRefresh &&
|
|
|
+ localProviders.Count == 0 &&
|
|
|
+ refreshResult.UpdateType > ItemUpdateType.None)
|
|
|
+ {
|
|
|
+ // TODO: If the new metadata from above has some blank data, this can cause old data to get filled into those empty fields
|
|
|
+ MergeData(item, temp, new List<MetadataFields>(), false, true);
|
|
|
+ }
|
|
|
|
|
|
- if (refreshResult.UpdateType > ItemUpdateType.None)
|
|
|
- {
|
|
|
- MergeData(temp, item, item.LockedFields, true, true);
|
|
|
+ if (refreshResult.UpdateType > ItemUpdateType.None)
|
|
|
+ {
|
|
|
+ MergeData(temp, item, item.LockedFields, true, true);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
var isUnidentified = failedProviderCount > 0 && successfulProviderCount == 0;
|