Skip to content

Commit 8c0742f

Browse files
yosuke-furukawabnoordhuis
authored andcommitted
net: check close callback is function
PR-URL: #609 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Evan Lucas <[email protected]>
1 parent 207e48c commit 8c0742f

File tree

2 files changed

+21
-1
lines changed

2 files changed

+21
-1
lines changed

lib/net.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1368,7 +1368,7 @@ Server.prototype.close = function(cb) {
13681368
self._emitCloseIfDrained();
13691369
}
13701370

1371-
if (cb) {
1371+
if (typeof cb === 'function') {
13721372
if (!this._handle) {
13731373
this.once('close', function() {
13741374
cb(new Error('Not running'));
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
var assert = require('assert');
2+
var common = require('../common');
3+
var net = require('net');
4+
5+
var server = net.createServer(assert.fail);
6+
var closeEvents = 0;
7+
8+
server.on('close', function() {
9+
++closeEvents;
10+
});
11+
12+
server.listen(common.PORT, function() {
13+
assert(false);
14+
});
15+
16+
server.close('bad argument');
17+
18+
process.on('exit', function() {
19+
assert.equal(closeEvents, 1);
20+
});

0 commit comments

Comments
 (0)