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() {
if (!this._handle && !this.connections) {
this.emit('close');
}
var self = this;
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.close();
});
server.once('close', function() {
server.listen(common.PORT + 1, function() {
server.close();
});

Loading…
Cancel
Save