From d145a9240682e41b323b54a3fa906370a0696dde Mon Sep 17 00:00:00 2001 From: Andrew Bradley Date: Wed, 21 Jul 2021 02:34:19 -0400 Subject: [PATCH 1/3] Fix #15 --- source-map-support.js | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/source-map-support.js b/source-map-support.js index 097a133..20210d0 100644 --- a/source-map-support.js +++ b/source-map-support.js @@ -485,7 +485,7 @@ function getErrorSource(error) { return null; } -function printErrorAndExit (error) { +function printFatalErrorUponExit (error) { var source = getErrorSource(error); // Ensure error is printed synchronously and not truncated @@ -503,18 +503,20 @@ function printErrorAndExit (error) { function shimEmitUncaughtException () { var origEmit = process.emit; + var isTerminatingDueToFatalException = false; + var fatalException; process.emit = function (type) { - if (type === 'uncaughtException') { - var hasStack = (arguments[1] && arguments[1].stack); - var hasListeners = (this.listeners(type).length > 0); - - if (hasStack && !hasListeners) { - return printErrorAndExit(arguments[1]); - } + const hadListeners = origEmit.apply(this, arguments); + if (type === 'uncaughtException' && !hadListeners) { + isTerminatingDueToFatalException = true; + fatalException = arguments[0]; + process.exit(1); } - - return origEmit.apply(this, arguments); + if (type === 'exit' && isTerminatingDueToFatalException) { + printFatalErrorUponExit(fatalException); + } + return hadListeners; }; } From 636c7e0a4a061d0691d515ddd59496078f156ee7 Mon Sep 17 00:00:00 2001 From: Andrew Bradley Date: Wed, 21 Jul 2021 02:51:53 -0400 Subject: [PATCH 2/3] fix --- source-map-support.js | 1 - 1 file changed, 1 deletion(-) diff --git a/source-map-support.js b/source-map-support.js index 66c95fe..edece70 100644 --- a/source-map-support.js +++ b/source-map-support.js @@ -505,7 +505,6 @@ function printFatalErrorUponExit (error) { colors: process.stderr.isTTY }) ); - process.exit(1); } function shimEmitUncaughtException () { From df10eae5079bf1021cf5d32b176daef5a2280886 Mon Sep 17 00:00:00 2001 From: Andrew Bradley Date: Wed, 21 Jul 2021 02:59:21 -0400 Subject: [PATCH 3/3] fix --- source-map-support.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source-map-support.js b/source-map-support.js index edece70..ff978a7 100644 --- a/source-map-support.js +++ b/source-map-support.js @@ -516,7 +516,7 @@ function shimEmitUncaughtException () { const hadListeners = origEmit.apply(this, arguments); if (type === 'uncaughtException' && !hadListeners) { isTerminatingDueToFatalException = true; - fatalException = arguments[0]; + fatalException = arguments[1]; process.exit(1); } if (type === 'exit' && isTerminatingDueToFatalException) {