|
|
|
@ -706,25 +706,23 @@ namespace WebSocketSharp
|
|
|
|
return buff;
|
|
|
|
return buff;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
internal static byte[] ReadBytes (this Stream stream, long length, int bufferLength)
|
|
|
|
internal static byte[] ReadBytes (
|
|
|
|
|
|
|
|
this Stream stream, long length, int bufferLength
|
|
|
|
|
|
|
|
)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
using (var dest = new MemoryStream ()) {
|
|
|
|
using (var dest = new MemoryStream ()) {
|
|
|
|
try {
|
|
|
|
var buff = new byte[bufferLength];
|
|
|
|
var buff = new byte[bufferLength];
|
|
|
|
var nread = 0;
|
|
|
|
var nread = 0;
|
|
|
|
while (length > 0) {
|
|
|
|
while (length > 0) {
|
|
|
|
if (length < bufferLength)
|
|
|
|
if (length < bufferLength)
|
|
|
|
bufferLength = (int) length;
|
|
|
|
bufferLength = (int) length;
|
|
|
|
|
|
|
|
|
|
|
|
nread = stream.Read (buff, 0, bufferLength);
|
|
|
|
nread = stream.Read (buff, 0, bufferLength);
|
|
|
|
if (nread == 0)
|
|
|
|
if (nread == 0)
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dest.Write (buff, 0, nread);
|
|
|
|
dest.Write (buff, 0, nread);
|
|
|
|
length -= nread;
|
|
|
|
length -= nread;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
catch {
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
dest.Close ();
|
|
|
|
dest.Close ();
|
|
|
|
|