[v10.x backport] n-api: handle reference delete before finalize
Backport of https://github.com/nodejs/node/pull/24494
Crashes were reported during finalization due to the memory for a reference being deleted and the finalizer running after the deletion.
This change ensures the deletion of the memory for the reference only occurs after the finalizer has run.
Fixes: https://github.com/nodejs/node-addon-api/issues/393
Backport-PR-URL: https://github.com/nodejs/node/pull/25574 PR-URL: https://github.com/nodejs/node/pull/24494 Reviewed-By: Anna Henningsen anna@addaleax.net Reviewed-By: Franziska Hinkelmann franziska.hinkelmann@gmail.com Reviewed-By: Refael Ackermann refack@gmail.com
Checklist
-
make -j4 test
(UNIX), orvcbuild test
(Windows) passes -
tests and/or benchmarks are included -
commit message follows commit guidelines