From 80c19b7cac52a57fd04966169c657400aeee3de8 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 27 Feb 2013 00:21:02 +0000 Subject: Make sure we dispose of WebResponse, StreamReader and Stream in various places where we were not already. --- .../Scripting/VectorRender/VectorRenderModule.cs | 16 +++++++----- .../CoreModules/World/WorldMap/WorldMapModule.cs | 30 ++++++++++------------ 2 files changed, 24 insertions(+), 22 deletions(-) (limited to 'OpenSim/Region/CoreModules') diff --git a/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs b/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs index 689e8a7..f04fabe 100644 --- a/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs +++ b/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs @@ -838,13 +838,17 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender try { WebRequest request = HttpWebRequest.Create(url); -//Ckrinke: Comment out for now as 'str' is unused. Bring it back into play later when it is used. -//Ckrinke Stream str = null; - HttpWebResponse response = (HttpWebResponse)(request).GetResponse(); - if (response.StatusCode == HttpStatusCode.OK) + + using (HttpWebResponse response = (HttpWebResponse)(request).GetResponse()) { - Bitmap image = new Bitmap(response.GetResponseStream()); - return image; + if (response.StatusCode == HttpStatusCode.OK) + { + using (Stream s = response.GetResponseStream()) + { + Bitmap image = new Bitmap(s); + return image; + } + } } } catch { } diff --git a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs index 912d50a..c50ab64 100644 --- a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs +++ b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs @@ -868,20 +868,22 @@ namespace OpenSim.Region.CoreModules.World.WorldMap } string response_mapItems_reply = null; - { // get the response - StreamReader sr = null; + { try { - WebResponse webResponse = mapitemsrequest.GetResponse(); - if (webResponse != null) - { - sr = new StreamReader(webResponse.GetResponseStream()); - response_mapItems_reply = sr.ReadToEnd().Trim(); - } - else + using (WebResponse webResponse = mapitemsrequest.GetResponse()) { - return new OSDMap(); - } + if (webResponse != null) + { + using (Stream s = webResponse.GetResponseStream()) + using (StreamReader sr = new StreamReader(s)) + response_mapItems_reply = sr.ReadToEnd().Trim(); + } + else + { + return new OSDMap(); + } + } } catch (WebException) { @@ -908,11 +910,6 @@ namespace OpenSim.Region.CoreModules.World.WorldMap return responseMap; } - finally - { - if (sr != null) - sr.Close(); - } OSD rezResponse = null; try @@ -926,6 +923,7 @@ namespace OpenSim.Region.CoreModules.World.WorldMap { m_log.InfoFormat("[WORLD MAP]: exception on parse of RequestMapItems reply from {0}: {1}", httpserver, ex.Message); responseMap["connect"] = OSD.FromBoolean(false); + lock (m_blacklistedregions) { if (!m_blacklistedregions.ContainsKey(regionhandle)) -- cgit v1.1