From 800d10de966a78184b417e7303e4988b668be406 Mon Sep 17 00:00:00 2001 From: Kamushek Date: Wed, 27 May 2020 15:42:12 +0300 Subject: [PATCH] Fixed NullPropagation (#1809) * Fixed NullPropagation * Changes to similar methods --- ArchiSteamFarm/WebBrowser.cs | 82 +++++++++++++----------------------- 1 file changed, 30 insertions(+), 52 deletions(-) diff --git a/ArchiSteamFarm/WebBrowser.cs b/ArchiSteamFarm/WebBrowser.cs index 5f01077a3..ac98ea37f 100644 --- a/ArchiSteamFarm/WebBrowser.cs +++ b/ArchiSteamFarm/WebBrowser.cs @@ -116,11 +116,7 @@ namespace ArchiSteamFarm { for (int i = 0; i < maxTries; i++) { await using StreamResponse response = await UrlGetToStream(request, referer, requestOptions | ERequestOptions.ReturnClientErrors, 1).ConfigureAwait(false); - if (response == null) { - return null; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new HtmlDocumentResponse(response); } @@ -128,7 +124,7 @@ namespace ArchiSteamFarm { break; } - if (response.Content == null) { + if (response?.Content == null) { continue; } @@ -165,12 +161,7 @@ namespace ArchiSteamFarm { for (byte i = 0; i < maxTries; i++) { await using StreamResponse response = await UrlGetToStream(request, referer, requestOptions | ERequestOptions.ReturnClientErrors, 1).ConfigureAwait(false); - // ReSharper disable once UseNullPropagationWhenPossible - false check - if (response == null) { - continue; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new ObjectResponse(response); } @@ -178,7 +169,7 @@ namespace ArchiSteamFarm { break; } - if (response.Content == null) { + if (response?.Content == null) { continue; } @@ -221,12 +212,7 @@ namespace ArchiSteamFarm { for (byte i = 0; i < maxTries; i++) { await using StreamResponse response = await UrlGetToStream(request, referer, requestOptions | ERequestOptions.ReturnClientErrors, 1).ConfigureAwait(false); - // ReSharper disable once UseNullPropagationWhenPossible - false check - if (response == null) { - continue; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new XmlDocumentResponse(response); } @@ -234,7 +220,7 @@ namespace ArchiSteamFarm { break; } - if (response.Content == null) { + if (response?.Content == null) { continue; } @@ -347,11 +333,7 @@ namespace ArchiSteamFarm { for (int i = 0; i < maxTries; i++) { await using StreamResponse response = await UrlPostToStream(request, data, referer, requestOptions | ERequestOptions.ReturnClientErrors, 1).ConfigureAwait(false); - if (response == null) { - return null; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new HtmlDocumentResponse(response); } @@ -359,7 +341,7 @@ namespace ArchiSteamFarm { break; } - if (response.Content == null) { + if (response?.Content == null) { continue; } @@ -396,11 +378,7 @@ namespace ArchiSteamFarm { for (byte i = 0; i < maxTries; i++) { await using StreamResponse response = await UrlPostToStream(request, data, referer, requestOptions | ERequestOptions.ReturnClientErrors, 1).ConfigureAwait(false); - if (response == null) { - return null; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new ObjectResponse(response); } @@ -408,7 +386,7 @@ namespace ArchiSteamFarm { break; } - if (response.Content == null) { + if (response?.Content == null) { continue; } @@ -481,11 +459,7 @@ namespace ArchiSteamFarm { await using StreamResponse response = await UrlGetToStream(request, referer, requestOptions | ERequestOptions.ReturnClientErrors, 1).ConfigureAwait(false); - if (response == null) { - continue; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new BinaryResponse(response); } @@ -493,6 +467,10 @@ namespace ArchiSteamFarm { break; } + if (response?.Content == null) { + continue; + } + ArchiLogger.LogGenericDebug("0%..."); #if !NETFRAMEWORK @@ -559,11 +537,7 @@ namespace ArchiSteamFarm { for (byte i = 0; i < maxTries; i++) { using HttpResponseMessage response = await InternalGet(request, referer).ConfigureAwait(false); - if (response == null) { - continue; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new StringResponse(response); } @@ -571,6 +545,10 @@ namespace ArchiSteamFarm { break; } + if (response?.Content == null) { + continue; + } + return new StringResponse(response, await response.Content.ReadAsStringAsync().ConfigureAwait(false)); } @@ -730,11 +708,7 @@ namespace ArchiSteamFarm { for (byte i = 0; i < maxTries; i++) { HttpResponseMessage response = await InternalGet(request, referer, HttpCompletionOption.ResponseHeadersRead).ConfigureAwait(false); - if (response == null) { - continue; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new StreamResponse(response); } @@ -742,6 +716,10 @@ namespace ArchiSteamFarm { break; } + if (response?.Content == null) { + continue; + } + return new StreamResponse(response, await response.Content.ReadAsStreamAsync().ConfigureAwait(false)); } @@ -766,11 +744,7 @@ namespace ArchiSteamFarm { for (byte i = 0; i < maxTries; i++) { HttpResponseMessage response = await InternalPost(request, data, referer, HttpCompletionOption.ResponseHeadersRead).ConfigureAwait(false); - if (response == null) { - continue; - } - - if (response.StatusCode.IsClientErrorCode()) { + if (response?.StatusCode.IsClientErrorCode() == true) { if (requestOptions.HasFlag(ERequestOptions.ReturnClientErrors)) { result = new StreamResponse(response); } @@ -778,6 +752,10 @@ namespace ArchiSteamFarm { break; } + if (response?.Content == null) { + continue; + } + return new StreamResponse(response, await response.Content.ReadAsStreamAsync().ConfigureAwait(false)); }