debug = function() { };
}
+function readStart(socket) {
+ if (!socket || !socket._handle || !socket._handle.readStart) return;
+ socket._handle.readStart();
+}
+
+function readStop(socket) {
+ if (!socket || !socket._handle || !socket._handle.readStop) return;
+ socket._handle.readStop();
+}
+
// Only called in the slow case where slow means
// that the request headers were either fragmented
// across multiple TCP packets or too large to be
var slice = b.slice(start, start + len);
var ret = stream.push(slice);
if (!ret)
- socket.pause();
+ readStop(socket);
}
}
if (parser.socket.readable) {
// force to read the next incoming message
- parser.socket.resume();
+ readStart(parser.socket);
}
}
if (!this.socket.readable)
return callback(null, null);
else
- this.socket.resume();
+ readStart(this.socket);
};
this._dumped = true;
this.socket.parser.incoming = null;
this.push(null);
- this.socket.resume();
+ readStart(this.socket);
};