From fb1a3a954ded72f371c751c66a1b8f1f6ba09c22 Mon Sep 17 00:00:00 2001 From: JKorf Date: Fri, 5 Oct 2018 11:05:43 +0200 Subject: [PATCH] Fixed reader disposing when request fails. Potentially fixes hanging of requests. --- CryptoExchange.Net/ExchangeClient.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/CryptoExchange.Net/ExchangeClient.cs b/CryptoExchange.Net/ExchangeClient.cs index 1bcd3e4..03467df 100644 --- a/CryptoExchange.Net/ExchangeClient.cs +++ b/CryptoExchange.Net/ExchangeClient.cs @@ -255,10 +255,12 @@ namespace CryptoExchange.Net var response = (HttpWebResponse)we.Response; try { - var reader = new StreamReader(response.GetResponseStream()); - var responseData = await reader.ReadToEndAsync().ConfigureAwait(false); - log.Write(LogVerbosity.Warning, "Server returned an error: " + responseData); - return new CallResult(null, ParseErrorResponse(responseData)); + using (var reader = new StreamReader(response.GetResponseStream())) + { + var responseData = await reader.ReadToEndAsync().ConfigureAwait(false); + log.Write(LogVerbosity.Warning, "Server returned an error: " + responseData); + return new CallResult(null, ParseErrorResponse(responseData)); + } } catch (Exception) {