From 10f4b31dcb0059a0d0a4405e8b2f8cee04596933 Mon Sep 17 00:00:00 2001 From: Michael Graeb Date: Tue, 28 Jan 2025 10:22:24 -0800 Subject: [PATCH] Fix MyObject memory leak in some napi examples --- src/1-getting-started/6_object_wrap/napi/myobject.cc | 2 +- src/1-getting-started/7_factory_wrap/napi/myobject.cc | 2 +- .../8_passing_wrapped/napi/myobject.cc | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/1-getting-started/6_object_wrap/napi/myobject.cc b/src/1-getting-started/6_object_wrap/napi/myobject.cc index 7de09d53..d2cca7d8 100644 --- a/src/1-getting-started/6_object_wrap/napi/myobject.cc +++ b/src/1-getting-started/6_object_wrap/napi/myobject.cc @@ -11,7 +11,7 @@ MyObject::~MyObject() { void MyObject::Destructor(napi_env env, void* nativeObject, void* /*finalize_hint*/) { - reinterpret_cast(nativeObject)->~MyObject(); + delete reinterpret_cast(nativeObject); } #define DECLARE_NAPI_METHOD(name, func) \ diff --git a/src/1-getting-started/7_factory_wrap/napi/myobject.cc b/src/1-getting-started/7_factory_wrap/napi/myobject.cc index 30a410cf..f3161da8 100644 --- a/src/1-getting-started/7_factory_wrap/napi/myobject.cc +++ b/src/1-getting-started/7_factory_wrap/napi/myobject.cc @@ -10,7 +10,7 @@ MyObject::~MyObject() { void MyObject::Destructor(napi_env env, void* nativeObject, void* /*finalize_hint*/) { - reinterpret_cast(nativeObject)->~MyObject(); + delete reinterpret_cast(nativeObject); } #define DECLARE_NAPI_METHOD(name, func) \ diff --git a/src/2-js-to-native-conversion/8_passing_wrapped/napi/myobject.cc b/src/2-js-to-native-conversion/8_passing_wrapped/napi/myobject.cc index 2f6e3e6a..17e714a2 100644 --- a/src/2-js-to-native-conversion/8_passing_wrapped/napi/myobject.cc +++ b/src/2-js-to-native-conversion/8_passing_wrapped/napi/myobject.cc @@ -10,7 +10,7 @@ MyObject::~MyObject() { void MyObject::Destructor(napi_env env, void* nativeObject, void* /*finalize_hint*/) { - reinterpret_cast(nativeObject)->~MyObject(); + delete reinterpret_cast(nativeObject); } napi_status MyObject::Init(napi_env env) {