diff --git a/src/Jellyfin.LiveTv/Listings/SchedulesDirect.cs b/src/Jellyfin.LiveTv/Listings/SchedulesDirect.cs index 3b20cd160b..5c0e96c67b 100644 --- a/src/Jellyfin.LiveTv/Listings/SchedulesDirect.cs +++ b/src/Jellyfin.LiveTv/Listings/SchedulesDirect.cs @@ -598,14 +598,14 @@ namespace Jellyfin.LiveTv.Listings } private async Task Send( - HttpRequestMessage options, + HttpRequestMessage message, bool enableRetry, ListingsProviderInfo providerInfo, CancellationToken cancellationToken, HttpCompletionOption completionOption = HttpCompletionOption.ResponseContentRead) { - var response = await _httpClientFactory.CreateClient(NamedClient.Default) - .SendAsync(options, completionOption, cancellationToken).ConfigureAwait(false); + using var client = _httpClientFactory.CreateClient(NamedClient.Default); + var response = await client.SendAsync(message, completionOption, cancellationToken).ConfigureAwait(false); if (response.IsSuccessStatusCode) { return response; @@ -625,8 +625,13 @@ namespace Jellyfin.LiveTv.Listings #pragma warning restore IDISP016, IDISP017 _tokens.Clear(); - options.Headers.TryAddWithoutValidation("token", await GetToken(providerInfo, cancellationToken).ConfigureAwait(false)); - return await Send(options, false, providerInfo, cancellationToken).ConfigureAwait(false); + using var retryMessage = new HttpRequestMessage(message.Method, message.RequestUri); + retryMessage.Content = message.Content; + retryMessage.Headers.TryAddWithoutValidation( + "token", + await GetToken(providerInfo, cancellationToken).ConfigureAwait(false)); + + return await Send(retryMessage, false, providerInfo, cancellationToken).ConfigureAwait(false); } private async Task GetTokenInternal(