private void Initialize (Stream stream)
{
- buffer = new byte [1024];
+ buffer = new byte [64];
this.stream = stream;
enc = Encoding.UTF8; // Default to UTF8 if we can't guess it
bufLength = stream.Read (buffer, 0, buffer.Length);
int c;
while (true) {
c = ReadByteSpecial ();
- switch (c) {
+ switch ((char) c) {
case '\r': goto case ' ';
case '\n': goto case ' ';
case '\t': goto case ' ';
{
int ret;
if (count <= bufLength - bufPos) { // all from buffer
- Array.Copy (this.buffer, bufPos, buffer, offset, count);
+ Buffer.BlockCopy (this.buffer, bufPos, buffer, offset, count);
bufPos += count;
ret = count;
} else {
int bufRest = bufLength - bufPos;
if (bufLength > bufPos) {
- Array.Copy (this.buffer, bufPos, buffer, offset, bufRest);
+ Buffer.BlockCopy (this.buffer, bufPos, buffer, offset, bufRest);
bufPos += bufRest;
}
ret = bufRest +