From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: deepak1556 Date: Tue, 26 Dec 2023 02:10:42 +0900 Subject: fix: capture embedder exceptions before entering V8 Upstrem bug: https://github.com/nodejs/node-v8/issues/274 The patch only addresses the callsites that triggered failing DCHECKS in the nodejs test suite. Need to be followed-up with upstream on the broader change as there maybe other callsites. diff --git a/src/handle_wrap.cc b/src/handle_wrap.cc index 70db7ddbeab5963f1bdf6cb05ee2763d76011cec..6ffe2a2ad01f33ff68c6646df330ec3ac7781a19 100644 --- a/src/handle_wrap.cc +++ b/src/handle_wrap.cc @@ -148,6 +148,9 @@ void HandleWrap::OnClose(uv_handle_t* handle) { wrap->OnClose(); wrap->handle_wrap_queue_.Remove(); + if (env->isolate()->IsExecutionTerminating()) + return; + if (!wrap->persistent().IsEmpty() && wrap->object() ->Has(env->context(), env->handle_onclose_symbol())