diff --git a/lib/net_uv.js b/lib/net_uv.js index 4ea91221d09..9b3750a517e 100644 --- a/lib/net_uv.js +++ b/lib/net_uv.js @@ -404,7 +404,9 @@ function listenip(self, ip, port) { self.emit('error', errnoException(errno, 'listen')); } else { self._handle.listen(self._backlog || 128); - self.emit('listening'); + process.nextTick(function() { + self.emit('listening'); + }); } } @@ -422,7 +424,9 @@ Server.prototype.listen = function() { // Don't bind(). OS will assign a port with INADDR_ANY. // The port can be found with server.address() this._handle.listen(self._backlog || 128); - this.emit('listening'); + process.nextTick(function() { + self.emit('listening'); + }); } else if (typeof arguments[1] == 'undefined') { // The first argument is the port, no IP given.