From 58a3b00cd8032a745861183b5a1c7a9055220011 Mon Sep 17 00:00:00 2001 From: Marek Habersack Date: Mon, 14 Apr 2008 22:45:44 +0000 Subject: [PATCH] 2008-04-15 Marek Habersack * AssemblyResourceLoader.cs: dispose of streams the way it should be done. 2008-04-15 Marek Habersack * MailDefinition.cs: dispose of streams the way it should be done. 2008-04-15 Marek Habersack * HttpRequest.cs: dispose of streams the way it should be done. 2008-04-15 Marek Habersack * CachingCompiler.cs: dispose of streams the way it should be done. svn path=/trunk/mcs/; revision=100690 --- .../System.Web.Compilation/CachingCompiler.cs | 10 ++-- .../System.Web.Compilation/ChangeLog | 5 ++ .../AssemblyResourceLoader.cs | 7 +-- .../System.Web/System.Web.Handlers/ChangeLog | 5 ++ .../System.Web.UI.WebControls/ChangeLog | 5 ++ .../MailDefinition.cs | 6 +-- mcs/class/System.Web/System.Web/ChangeLog | 5 ++ .../System.Web/System.Web/HttpRequest.cs | 49 ++++++++++--------- 8 files changed, 58 insertions(+), 34 deletions(-) diff --git a/mcs/class/System.Web/System.Web.Compilation/CachingCompiler.cs b/mcs/class/System.Web/System.Web.Compilation/CachingCompiler.cs index eb5e35b77aa..c3094b2feaa 100644 --- a/mcs/class/System.Web/System.Web.Compilation/CachingCompiler.cs +++ b/mcs/class/System.Web/System.Web.Compilation/CachingCompiler.cs @@ -242,14 +242,16 @@ namespace System.Web.Compilation { CompilerResults result = CachingCompiler.Compile (language, key, file, assemblies); if (result.NativeCompilerReturnValue != 0) { - StreamReader reader = new StreamReader (file); - throw new CompilationException (file, result.Errors, reader.ReadToEnd ()); + using (StreamReader reader = new StreamReader (file)) { + throw new CompilationException (file, result.Errors, reader.ReadToEnd ()); + } } Assembly assembly = result.CompiledAssembly; if (assembly == null) { - StreamReader reader = new StreamReader (file); - throw new CompilationException (file, result.Errors, reader.ReadToEnd ()); + using (StreamReader reader = new StreamReader (file)) { + throw new CompilationException (file, result.Errors, reader.ReadToEnd ()); + } } Type type = assembly.GetType (typename, true); diff --git a/mcs/class/System.Web/System.Web.Compilation/ChangeLog b/mcs/class/System.Web/System.Web.Compilation/ChangeLog index 9a166f14245..2103c802892 100644 --- a/mcs/class/System.Web/System.Web.Compilation/ChangeLog +++ b/mcs/class/System.Web/System.Web.Compilation/ChangeLog @@ -1,3 +1,8 @@ +2008-04-15 Marek Habersack + + * CachingCompiler.cs: dispose of streams the way it should + be done. + 2008-04-09 Marek Habersack * BuildManager.cs: refactoring - the SetCommonParameters and diff --git a/mcs/class/System.Web/System.Web.Handlers/AssemblyResourceLoader.cs b/mcs/class/System.Web/System.Web.Handlers/AssemblyResourceLoader.cs index 7881213e5d0..94caf82c3e3 100644 --- a/mcs/class/System.Web/System.Web.Handlers/AssemblyResourceLoader.cs +++ b/mcs/class/System.Web/System.Web.Handlers/AssemblyResourceLoader.cs @@ -260,9 +260,10 @@ namespace System.Web.Handlers { throw new HttpException (404, String.Concat ("Resource ", resourceName, " not found")); if (wra.PerformSubstitution) { - StreamReader r = new StreamReader (s); - TextWriter w = context.Response.Output; - new PerformSubstitutionHelper (assembly).PerformSubstitution (r, w); + using (StreamReader r = new StreamReader (s)) { + TextWriter w = context.Response.Output; + new PerformSubstitutionHelper (assembly).PerformSubstitution (r, w); + } } else { byte [] buf = new byte [1024]; diff --git a/mcs/class/System.Web/System.Web.Handlers/ChangeLog b/mcs/class/System.Web/System.Web.Handlers/ChangeLog index f39783efc06..71173500d57 100644 --- a/mcs/class/System.Web/System.Web.Handlers/ChangeLog +++ b/mcs/class/System.Web/System.Web.Handlers/ChangeLog @@ -1,3 +1,8 @@ +2008-04-15 Marek Habersack + + * AssemblyResourceLoader.cs: dispose of streams the way it should + be done. + 2007-12-13 Marek Habersack * AssemblyResourceLoader.cs: speed optimization - use String.Concat diff --git a/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog b/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog index 840c15c6dda..f74e467aab0 100644 --- a/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog +++ b/mcs/class/System.Web/System.Web.UI.WebControls/ChangeLog @@ -1,3 +1,8 @@ +2008-04-15 Marek Habersack + + * MailDefinition.cs: dispose of streams the way it should + be done. + 2008-04-10 Marek Habersack * RadioButton.cs: adjust 'name' and 'value' attribute values to diff --git a/mcs/class/System.Web/System.Web.UI.WebControls/MailDefinition.cs b/mcs/class/System.Web/System.Web.UI.WebControls/MailDefinition.cs index 82d4fd2a71b..c3b39b2deaf 100644 --- a/mcs/class/System.Web/System.Web.UI.WebControls/MailDefinition.cs +++ b/mcs/class/System.Web/System.Web.UI.WebControls/MailDefinition.cs @@ -108,9 +108,9 @@ namespace System.Web.UI.WebControls else filePath = Path.Combine (owner.TemplateSourceDirectory, BodyFileName); - StreamReader sr = new StreamReader (filePath); - bodyText = sr.ReadToEnd (); - sr.Close (); + using (StreamReader sr = new StreamReader (filePath)) { + bodyText = sr.ReadToEnd (); + } } else bodyText = ""; diff --git a/mcs/class/System.Web/System.Web/ChangeLog b/mcs/class/System.Web/System.Web/ChangeLog index c431dc951a5..c6db5267e22 100644 --- a/mcs/class/System.Web/System.Web/ChangeLog +++ b/mcs/class/System.Web/System.Web/ChangeLog @@ -1,3 +1,8 @@ +2008-04-15 Marek Habersack + + * HttpRequest.cs: dispose of streams the way it should + be done. + 2008-04-14 Igor Zelmanovich * HttpRuntime.cs: refactoring. diff --git a/mcs/class/System.Web/System.Web/HttpRequest.cs b/mcs/class/System.Web/System.Web/HttpRequest.cs index f9c0563c030..e9de4df7b36 100644 --- a/mcs/class/System.Web/System.Web/HttpRequest.cs +++ b/mcs/class/System.Web/System.Web/HttpRequest.cs @@ -568,36 +568,37 @@ namespace System.Web { void LoadWwwForm () #endif { - Stream input = GetSubStream (InputStream); - StreamReader s = new StreamReader (input, ContentEncoding); - - StringBuilder key = new StringBuilder (); - StringBuilder value = new StringBuilder (); - int c; + using (Stream input = GetSubStream (InputStream)) { + using (StreamReader s = new StreamReader (input, ContentEncoding)) { + StringBuilder key = new StringBuilder (); + StringBuilder value = new StringBuilder (); + int c; - while ((c = s.Read ()) != -1){ - if (c == '='){ - value.Length = 0; while ((c = s.Read ()) != -1){ - if (c == '&'){ + if (c == '='){ + value.Length = 0; + while ((c = s.Read ()) != -1){ + if (c == '&'){ + AddRawKeyValue (key, value); + break; + } else + value.Append ((char) c); + } + if (c == -1){ + AddRawKeyValue (key, value); + return; + } + } else if (c == '&') AddRawKeyValue (key, value); - break; - } else - value.Append ((char) c); + else + key.Append ((char) c); } - if (c == -1){ + if (c == -1) AddRawKeyValue (key, value); - return; - } - } else if (c == '&') - AddRawKeyValue (key, value); - else - key.Append ((char) c); - } - if (c == -1) - AddRawKeyValue (key, value); - EndSubStream (input); + EndSubStream (input); + } + } } bool IsContentType (string ct, bool starts_with) -- 2.25.1