From 23dfadd4300e251b737d4126d5e361921263113c Mon Sep 17 00:00:00 2001 From: cvium Date: Thu, 6 Aug 2020 23:43:19 +0200 Subject: [PATCH] Throw HttpException when tvdb sends us crap data --- MediaBrowser.Providers/Manager/ProviderManager.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs index 9170c70025..4e8ff24d35 100644 --- a/MediaBrowser.Providers/Manager/ProviderManager.cs +++ b/MediaBrowser.Providers/Manager/ProviderManager.cs @@ -4,6 +4,8 @@ using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; +using System.Net; +using System.Net.Mime; using System.Threading; using System.Threading.Tasks; using Jellyfin.Data.Entities; @@ -22,6 +24,7 @@ using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; using MediaBrowser.Model.Providers; using Microsoft.Extensions.Logging; using Priority_Queue; @@ -169,6 +172,15 @@ namespace MediaBrowser.Providers.Manager } } + // thetvdb will sometimes serve a rubbish 404 html page with a 200 OK code, because reasons... + if (response.ContentType.Equals(MediaTypeNames.Text.Html, StringComparison.OrdinalIgnoreCase)) + { + throw new HttpException("Invalid image received.") + { + StatusCode = HttpStatusCode.NotFound + }; + } + await SaveImage(item, response.Content, response.ContentType, type, imageIndex, cancellationToken).ConfigureAwait(false); }