2002-07-31 Duncan Mak <duncan@ximian.com>
authorDuncan Mak <duncan@mono-cvs.ximian.com>
Wed, 31 Jul 2002 11:11:54 +0000 (11:11 -0000)
committerDuncan Mak <duncan@mono-cvs.ximian.com>
Wed, 31 Jul 2002 11:11:54 +0000 (11:11 -0000)
* StreamReader.cs:
(Dispose): Added and implmented.

* StreamWriter.cs:
(Dispose): Fixed visibility.
(Initialize): Fixed visibility, made internal.

* BinaryReader.cs:
(Dispose): Fixed visibility.

svn path=/trunk/mcs/; revision=6279

mcs/class/corlib/System.IO/BinaryReader.cs
mcs/class/corlib/System.IO/ChangeLog
mcs/class/corlib/System.IO/StreamReader.cs
mcs/class/corlib/System.IO/StreamWriter.cs

index 573ab00c416f08b35e37f38ba1be45a54f40ce68..30295dceb9f4fb58789c97dd640662bf44e044e7 100644 (file)
@@ -42,15 +42,24 @@ namespace System.IO {
                }
 
                public virtual void Close() {
-                       Dispose();
+                       Dispose (true);
                        m_stream.Close();
                }
+               
+               protected void Dispose (bool disposing)
+               {
+                       if (disposing)
+                               m_stream.Close ();
 
-               public virtual void Dispose() {
                        m_buffer = null;
                        m_buffer_used = 0;
                }
 
+               void IDisposable.Dispose() 
+               {
+                       Dispose (true);
+               }
+
                protected virtual void FillBuffer(int bytes) {
                        if (!EnsureBuffered(m_buffer_used - m_buffer_pos + bytes)) {
                                throw new EndOfStreamException();
index 1ba73e41592074cf8562648614364fa05ef39550..bc8435caae2cb86412184570f405689df7abbf31 100644 (file)
@@ -1,3 +1,15 @@
+2002-07-31  Duncan Mak  <duncan@ximian.com>
+
+       * StreamReader.cs: 
+       (Dispose): Added and implmented.
+
+       * StreamWriter.cs: 
+       (Dispose): Fixed visibility.
+       (Initialize): Fixed visibility, made internal.
+
+       * BinaryReader.cs:
+       (Dispose): Fixed visibility.
+
 2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
 
        * File.cs:
index 794e19b43a4aee75645811052f11ae278ed3b8ac..3a1fca834d6faea04e371da32db8a5a39a6602fc 100644 (file)
@@ -136,6 +136,15 @@ namespace System.IO {
                        Dispose (true);\r
                }\r
 \r
+               protected override void Dispose (bool disposing)\r
+               {\r
+                       if (disposing)\r
+                               internalStream.Close ();\r
+                       \r
+                       rgbEncoded = null;\r
+                       rgchDecoded = null;\r
+               }\r
+\r
                public void DiscardBufferedData ()\r
                {\r
                        pos = 0;\r
index b4103e3b53f86d621ca531e12e70818fc765a6fd..39822d80949dec275072924f606b0341cc3e0ef1 100644 (file)
@@ -40,7 +40,7 @@ namespace System.IO {
                public StreamWriter (Stream stream, Encoding encoding)\r
                        : this (stream, encoding, DefaultBufferSize) {}\r
 \r
-               protected void Initialize(Encoding encoding, int bufferSize) {\r
+               internal void Initialize(Encoding encoding, int bufferSize) {\r
                        internalEncoding = encoding;\r
                        pos = 0;\r
                        BufferSize = Math.Max(bufferSize, MinimumBufferSize);\r
@@ -127,7 +127,7 @@ namespace System.IO {
                        }\r
                }\r
 \r
-               public void Dispose() {\r
+               void Dispose() {\r
                        Dispose(true);\r
                        // Take yourself off of the Finalization queue \r
                        // to prevent finalization code for this object\r
@@ -203,4 +203,4 @@ namespace System.IO {
                        Dispose(false);\r
                }\r
        }\r
-}
\ No newline at end of file
+}\r