diff --git a/src/node_buffer.cc b/src/node_buffer.cc index a2e6ec27f82f06..77120d6af4a811 100644 --- a/src/node_buffer.cc +++ b/src/node_buffer.cc @@ -163,7 +163,6 @@ void CallbackInfo::WeakCallback( const WeakCallbackInfo& data) { CallbackInfo* self = data.GetParameter(); self->WeakCallback(data.GetIsolate()); - delete self; } @@ -171,6 +170,7 @@ void CallbackInfo::WeakCallback(Isolate* isolate) { callback_(data_, hint_); int64_t change_in_bytes = -static_cast(sizeof(*this)); isolate->AdjustAmountOfExternalAllocatedMemory(change_in_bytes); + delete this; }