w.start();
} else if (this.listeners(type).length === 1) {
- signalWatchers[event].start();
+ signalWatchers[type].start();
}
}
var first = 0,
second = 0;
+var sighup = false;
+
process.addListener('SIGUSR1', function() {
console.log('Interrupted by SIGUSR1');
first += 1;
}
}, 1);
+// Test addListener condition where a watcher for SIGNAL
+// has been previously registered, and `process.listeners(SIGNAL).length === 1`
+process.addListener('SIGHUP', function () {});
+process.removeAllListeners('SIGHUP');
+process.addListener('SIGHUP', function () { sighup = true });
+process.kill(process.pid, 'SIGHUP');
process.addListener('exit', function() {
assert.equal(1, first);
assert.equal(1, second);
+ assert.equal(true, sighup);
});