aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/Manager/ItemImageProvider.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Providers/Manager/ItemImageProvider.cs')
-rw-r--r--MediaBrowser.Providers/Manager/ItemImageProvider.cs26
1 files changed, 20 insertions, 6 deletions
diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
index b39deba89..cfa3e67f5 100644
--- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs
+++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs
@@ -17,6 +17,7 @@ using System.Net;
using System.Threading;
using System.Threading.Tasks;
using CommonIO;
+using MediaBrowser.Model.MediaInfo;
namespace MediaBrowser.Providers.Manager
{
@@ -138,11 +139,24 @@ namespace MediaBrowser.Providers.Manager
{
if (!string.IsNullOrEmpty(response.Path))
{
- var mimeType = MimeTypes.GetMimeType(response.Path);
-
- var stream = _fileSystem.GetFileStream(response.Path, FileMode.Open, FileAccess.Read, FileShare.Read, true);
-
- await _providerManager.SaveImage(item, stream, mimeType, imageType, null, response.InternalCacheKey, cancellationToken).ConfigureAwait(false);
+ if (response.Protocol == MediaProtocol.Http)
+ {
+ _logger.Debug("Setting image url into item {0}", item.Id);
+ item.SetImage(new ItemImageInfo
+ {
+ Path = response.Path,
+ Type = imageType
+
+ }, 0);
+ }
+ else
+ {
+ var mimeType = MimeTypes.GetMimeType(response.Path);
+
+ var stream = _fileSystem.GetFileStream(response.Path, FileMode.Open, FileAccess.Read, FileShare.Read, true);
+
+ await _providerManager.SaveImage(item, stream, mimeType, imageType, null, response.InternalCacheKey, cancellationToken).ConfigureAwait(false);
+ }
}
else
{
@@ -391,7 +405,7 @@ namespace MediaBrowser.Providers.Manager
else
{
var existing = item.GetImageInfo(type, 0);
- if (existing != null && !_fileSystem.FileExists(existing.Path))
+ if (existing != null && !_fileSystem.FileExists(existing.Path))
{
item.RemoveImage(existing);
changed = true;