From da511f2edd2648d2720764f7925b9d8fbb0df395 Mon Sep 17 00:00:00 2001 From: djbadders <34887832+djbadders@users.noreply.github.com> Date: Fri, 6 Sep 2019 23:55:41 +0100 Subject: [PATCH] Fix cleanup of streams for http calls --- Core/MarketAnalyzer/BaseAnalyzer.cs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Core/MarketAnalyzer/BaseAnalyzer.cs b/Core/MarketAnalyzer/BaseAnalyzer.cs index d2522a6..f6deb22 100644 --- a/Core/MarketAnalyzer/BaseAnalyzer.cs +++ b/Core/MarketAnalyzer/BaseAnalyzer.cs @@ -29,14 +29,17 @@ namespace Core.MarketAnalyzer request.Timeout = 60000; HttpWebResponse httpResponse = null; + string jsonString = string.Empty; try { httpResponse = (HttpWebResponse)request.GetResponse(); - StreamReader jsonReader = new StreamReader(httpResponse.GetResponseStream()); - string jsonString = jsonReader.ReadToEnd(); - jsonReader.Close(); + using (StreamReader jsonReader = new StreamReader(httpResponse.GetResponseStream())) + { + jsonString = jsonReader.ReadToEnd(); + jsonReader.Close(); + } jsonObject = JsonConvert.DeserializeObject>(jsonString); @@ -44,6 +47,7 @@ namespace Core.MarketAnalyzer } catch (WebException ex) { + log.DoLogCritical(string.Format("Error whilst calling {0} \nError: {1}", url, ex.Message), ex); // Error calling the service but we got a response so dump it. string responseString = string.Empty; var encoding = httpResponse.CharacterSet == "" ? Encoding.UTF8 : Encoding.GetEncoding(httpResponse.CharacterSet);