Browse Source

net: defer net.Server 'close' event to next tick

v0.7.4-release
Ben Noordhuis 13 years ago
parent
commit
c24276f008
  1. 10
      lib/net.js
  2. 3
      test/simple/test-net-server-listen-remove-callback.js

10
lib/net.js

@ -862,9 +862,13 @@ Server.prototype.close = function() {
}; };
Server.prototype._emitCloseIfDrained = function() { Server.prototype._emitCloseIfDrained = function() {
if (!this._handle && !this.connections) { var self = this;
this.emit('close');
} if (self._handle || self.connections) return;
process.nextTick(function() {
self.emit('close');
});
}; };

3
test/simple/test-net-server-listen-remove-callback.js

@ -34,6 +34,9 @@ server.on('close', function() {
server.listen(common.PORT, function() { server.listen(common.PORT, function() {
server.close(); server.close();
});
server.once('close', function() {
server.listen(common.PORT + 1, function() { server.listen(common.PORT + 1, function() {
server.close(); server.close();
}); });

Loading…
Cancel
Save