summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/process.ts
diff options
context:
space:
mode:
Diffstat (limited to 'ext/node/polyfills/process.ts')
-rw-r--r--ext/node/polyfills/process.ts8
1 files changed, 4 insertions, 4 deletions
diff --git a/ext/node/polyfills/process.ts b/ext/node/polyfills/process.ts
index d2f220734..2dc10d7b1 100644
--- a/ext/node/polyfills/process.ts
+++ b/ext/node/polyfills/process.ts
@@ -716,9 +716,9 @@ internals.__bootstrapNodeProcess = function (
core.setMacrotaskCallback(runNextTicks);
enableNextTick();
- // TODO(bartlomieju): this is buggy, see https://github.com/denoland/deno/issues/16928
- // We should use a specialized API in 99_main.js instead
- globalThis.addEventListener("unhandledrejection", (event) => {
+ // Install special "unhandledrejection" handler, that will be called
+ // last.
+ internals.nodeProcessUnhandledRejectionCallback = (event) => {
if (process.listenerCount("unhandledRejection") === 0) {
// The Node.js default behavior is to raise an uncaught exception if
// an unhandled rejection occurs and there are no unhandledRejection
@@ -734,7 +734,7 @@ internals.__bootstrapNodeProcess = function (
event.preventDefault();
process.emit("unhandledRejection", event.reason, event.promise);
- });
+ };
globalThis.addEventListener("error", (event) => {
if (process.listenerCount("uncaughtException") > 0) {