From 96cf13060d0421c38399fec4352d0b56bb90e8dc Mon Sep 17 00:00:00 2001 From: Max <@> Date: Tue, 19 Nov 2024 15:43:22 -0500 Subject: [PATCH] Extension lookup tv icons --- .../Manager/ProviderManager.cs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs index e43da13504..37074eddc3 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); }