|
|
|
@ -161,14 +161,23 @@ namespace WebSocketSharp.Net
|
|
|
|
{
|
|
|
|
{
|
|
|
|
using (_body) {
|
|
|
|
using (_body) {
|
|
|
|
var len = _body.Length;
|
|
|
|
var len = _body.Length;
|
|
|
|
|
|
|
|
|
|
|
|
if (len > Int32.MaxValue) {
|
|
|
|
if (len > Int32.MaxValue) {
|
|
|
|
_body.Position = 0;
|
|
|
|
_body.Position = 0;
|
|
|
|
|
|
|
|
|
|
|
|
var buffLen = 1024;
|
|
|
|
var buffLen = 1024;
|
|
|
|
var buff = new byte[buffLen];
|
|
|
|
var buff = new byte[buffLen];
|
|
|
|
var nread = 0;
|
|
|
|
var nread = 0;
|
|
|
|
while ((nread = _body.Read (buff, 0, buffLen)) > 0)
|
|
|
|
|
|
|
|
|
|
|
|
while (true) {
|
|
|
|
|
|
|
|
nread = _body.Read (buff, 0, buffLen);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (nread <= 0)
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
|
|
_writeBody (buff, 0, nread);
|
|
|
|
_writeBody (buff, 0, nread);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
else if (len > 0) {
|
|
|
|
else if (len > 0) {
|
|
|
|
_writeBody (_body.GetBuffer (), 0, (int) len);
|
|
|
|
_writeBody (_body.GetBuffer (), 0, (int) len);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|