aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax <@>2024-11-19 15:43:22 -0500
committerMax <@>2024-11-19 15:43:22 -0500
commit96cf13060d0421c38399fec4352d0b56bb90e8dc (patch)
treefaa1bcc19e4ebd42cdeda1fef155ad198cf37c8b
parentd1d5ea9c80d254aba9d749f1fad5ace5b31579ab (diff)
Extension lookup tv icons
-rw-r--r--MediaBrowser.Providers/Manager/ProviderManager.cs18
1 files changed, 16 insertions, 2 deletions
diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs
index e43da1350..37074eddc 100644
--- a/MediaBrowser.Providers/Manager/ProviderManager.cs
+++ b/MediaBrowser.Providers/Manager/ProviderManager.cs
@@ -200,11 +200,25 @@ namespace MediaBrowser.Providers.Manager
// TODO: Isolate this hack into the tvh plugin
if (string.IsNullOrEmpty(contentType))
{
+ // First, check for imagecache special case
if (url.Contains("/imagecache/", StringComparison.OrdinalIgnoreCase))
{
- contentType = MediaTypeNames.Image.Png;
+ contentType = "image/png";
+ return;
}
- else
+
+ // Deduce content type from file extension
+ var fileExtension = Path.GetExtension(url)?.ToLowerInvariant();
+ contentType = fileExtension switch
+ {
+ ".jpg" or ".jpeg" => "image/jpeg",
+ ".png" => "image/png",
+ ".gif" => "image/gif",
+ ".webp" => "image/webp",
+ _ => null
+ };
+
+ if (string.IsNullOrEmpty(contentType))
{
throw new HttpRequestException("Invalid image received: contentType not set.", null, response.StatusCode);
}