diff --git a/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs b/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs index d4b5d617b..b14bac702 100644 --- a/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs +++ b/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs @@ -70,7 +70,7 @@ namespace NzbDrone.Core.Indexers.Definitions.Avistaz { _logger.Warn(ex, "Failed to authenticate with Avistaz"); - var jsonResponse = STJson.Deserialize(ex.Response.Content); + STJson.TryDeserialize(ex.Response.Content, out var jsonResponse); throw new IndexerAuthException(jsonResponse?.Message ?? "Unauthorized request to indexer"); } } @@ -98,8 +98,8 @@ namespace NzbDrone.Core.Indexers.Definitions.Avistaz { _logger.Warn(ex, "Unauthorized request to indexer"); - var jsonResponse = new HttpResponse(ex.Response); - return new ValidationFailure(string.Empty, jsonResponse.Resource?.Message ?? "Unauthorized request to indexer"); + STJson.TryDeserialize(ex.Response.Content, out var jsonResponse); + return new ValidationFailure(string.Empty, jsonResponse?.Message ?? "Unauthorized request to indexer"); } _logger.Warn(ex, "Unable to connect to indexer"); @@ -134,7 +134,10 @@ namespace NzbDrone.Core.Indexers.Definitions.Avistaz var response = await ExecuteAuth(authLoginRequest); - var authResponse = STJson.Deserialize(response.Content); + if (!STJson.TryDeserialize(response.Content, out var authResponse)) + { + throw new Exception("Invalid response from AvistaZ, the response is not valid JSON"); + } return authResponse.Token; }