2004-12-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
authorGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Tue, 21 Dec 2004 02:23:14 +0000 (02:23 -0000)
committerGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Tue, 21 Dec 2004 02:23:14 +0000 (02:23 -0000)
* BufferedStream.cs: use Buffer.BlockCopyInternal instead of Array.Copy.

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

mcs/class/corlib/System.IO/BufferedStream.cs
mcs/class/corlib/System.IO/ChangeLog

index 1fa7931f78a1b6bcce3e9bba0f60595fd23e3eda..ab8bcd831d814ed138cc164b81e238a5eb238a02 100644 (file)
@@ -207,7 +207,7 @@ namespace System.IO {
                        }
 
                        if (count <= m_buffer_read_ahead - m_buffer_pos) {
-                               Array.Copy(m_buffer, m_buffer_pos, array, offset, count);
+                               Buffer.BlockCopyInternal (m_buffer, m_buffer_pos, array, offset, count);
 
                                m_buffer_pos += count;
                                if (m_buffer_pos == m_buffer_read_ahead) {
@@ -219,7 +219,7 @@ namespace System.IO {
                        }
 
                        int ret = m_buffer_read_ahead - m_buffer_pos;
-                       Array.Copy(m_buffer, m_buffer_pos, array, offset, ret);
+                       Buffer.BlockCopyInternal (m_buffer, m_buffer_pos, array, offset, ret);
                        m_buffer_pos = 0;
                        m_buffer_read_ahead = 0;
                        offset += ret;
@@ -231,11 +231,11 @@ namespace System.IO {
                                m_buffer_read_ahead = m_stream.Read(m_buffer, 0, m_buffer.Length);
                                
                                if (count < m_buffer_read_ahead) {
-                                       Array.Copy(m_buffer, 0, array, offset, count);
+                                       Buffer.BlockCopyInternal (m_buffer, 0, array, offset, count);
                                        m_buffer_pos = count;
                                        ret += count;
                                } else {
-                                       Array.Copy(m_buffer, 0, array, offset, m_buffer_read_ahead);
+                                       Buffer.BlockCopyInternal (m_buffer, 0, array, offset, m_buffer_read_ahead);
                                        ret += m_buffer_read_ahead;
                                        m_buffer_read_ahead = 0;
                                }
@@ -272,7 +272,7 @@ namespace System.IO {
                                m_stream.Write (array, offset, count);
                        } 
                        else {
-                               Array.Copy (array, offset, m_buffer, m_buffer_pos, count);
+                               Buffer.BlockCopyInternal  (array, offset, m_buffer, m_buffer_pos, count);
                                m_buffer_pos += count;
                        }
                }
index 645d152947e1fc9f9712ef556c6e45ac0245b5cf..2eed844a7701afaa34e8c03e78021f67036befe2 100644 (file)
@@ -1,3 +1,7 @@
+2004-12-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * BufferedStream.cs: use Buffer.BlockCopyInternal instead of Array.Copy.
+
 2004-12-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
 
        * File.cs: delegate to the runtime the task of checking for destination