summaryrefslogtreecommitdiff
path: root/node_modules/signal-exit/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/signal-exit/index.js')
-rw-r--r--node_modules/signal-exit/index.js9
1 files changed, 9 insertions, 0 deletions
diff --git a/node_modules/signal-exit/index.js b/node_modules/signal-exit/index.js
index 7dd8d917d..337f691ed 100644
--- a/node_modules/signal-exit/index.js
+++ b/node_modules/signal-exit/index.js
@@ -19,6 +19,15 @@ if (process.__signal_exit_emitter__) {
emitter.emitted = {}
}
+// Because this emitter is a global, we have to check to see if a
+// previous version of this library failed to enable infinite listeners.
+// I know what you're about to say. But literally everything about
+// signal-exit is a compromise with evil. Get used to it.
+if (!emitter.infinite) {
+ emitter.setMaxListeners(Infinity)
+ emitter.infinite = true
+}
+
module.exports = function (cb, opts) {
assert.equal(typeof cb, 'function', 'a callback must be provided for exit handler')