net: honor 'enable' flag in .setNoDelay()

Fixes #3096.
This commit is contained in:
Ben Noordhuis 2012-04-12 19:13:04 +02:00
Родитель 5b43c63c88
Коммит 16fca262be
2 изменённых файлов: 5 добавлений и 3 удалений

Просмотреть файл

@ -183,9 +183,10 @@ Socket.prototype._onTimeout = function() {
};
Socket.prototype.setNoDelay = function() {
Socket.prototype.setNoDelay = function(enable) {
// backwards compatibility: assume true when `enable` is omitted
if (this._handle && this._handle.setNoDelay)
this._handle.setNoDelay();
this._handle.setNoDelay(typeof enable === 'undefined' ? true : !!enable);
};

Просмотреть файл

@ -253,7 +253,8 @@ Handle<Value> TCPWrap::SetNoDelay(const Arguments& args) {
UNWRAP
int r = uv_tcp_nodelay(&wrap->handle_, 1);
int enable = static_cast<int>(args[0]->BooleanValue());
int r = uv_tcp_nodelay(&wrap->handle_, enable);
if (r)
SetErrno(uv_last_error(uv_default_loop()));