|
@@ -7,6 +7,7 @@ using MediaBrowser.Controller.Channels;
|
|
|
using MediaBrowser.Controller.Configuration;
|
|
|
using MediaBrowser.Controller.Entities;
|
|
|
using MediaBrowser.Controller.Library;
|
|
|
+using MediaBrowser.Controller.Providers;
|
|
|
using MediaBrowser.Model.Channels;
|
|
|
using MediaBrowser.Model.Configuration;
|
|
|
using MediaBrowser.Model.Dto;
|
|
@@ -208,16 +209,6 @@ namespace MediaBrowser.Server.Implementations.Channels
|
|
|
CancellationToken cancellationToken,
|
|
|
string path)
|
|
|
{
|
|
|
- var limit = GetDownloadLimit(channelOptions);
|
|
|
-
|
|
|
- if (limit.HasValue)
|
|
|
- {
|
|
|
- if (IsSizeLimitReached(path, limit.Value))
|
|
|
- {
|
|
|
- return;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
var itemId = item.Id.ToString("N");
|
|
|
var sources = await _manager.GetChannelItemMediaSources(itemId, false, cancellationToken)
|
|
|
.ConfigureAwait(false);
|
|
@@ -230,6 +221,16 @@ namespace MediaBrowser.Server.Implementations.Channels
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+ var limit = GetDownloadLimit(channelOptions);
|
|
|
+
|
|
|
+ if (limit.HasValue)
|
|
|
+ {
|
|
|
+ if (IsSizeLimitReached(path, limit.Value))
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
var channelItem = (IChannelMediaItem)item;
|
|
|
|
|
|
var destination = Path.Combine(path, channelItem.ChannelId, itemId);
|
|
@@ -254,10 +255,25 @@ namespace MediaBrowser.Server.Implementations.Channels
|
|
|
|
|
|
if (item != null)
|
|
|
{
|
|
|
+ var forceSave = false;
|
|
|
+
|
|
|
// Get the version from the database
|
|
|
- item = _libraryManager.GetItemById(item.Id) ?? item;
|
|
|
+ var dbItem = _libraryManager.GetItemById(item.Id);
|
|
|
+
|
|
|
+ if (dbItem == null)
|
|
|
+ {
|
|
|
+ forceSave = true;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ item = dbItem;
|
|
|
+ }
|
|
|
+
|
|
|
+ await item.RefreshMetadata(new MetadataRefreshOptions
|
|
|
+ {
|
|
|
+ ForceSave = forceSave
|
|
|
|
|
|
- await item.RefreshMetadata(cancellationToken).ConfigureAwait(false);
|
|
|
+ }, cancellationToken).ConfigureAwait(false);
|
|
|
}
|
|
|
}
|
|
|
|