diff --git a/src/node_buffer.cc b/src/node_buffer.cc index 18a46fd6fc9ae8..d1db7063de478d 100644 --- a/src/node_buffer.cc +++ b/src/node_buffer.cc @@ -162,7 +162,6 @@ void CallbackInfo::WeakCallback( const WeakCallbackInfo& data) { CallbackInfo* self = data.GetParameter(); self->WeakCallback(data.GetIsolate()); - delete self; } @@ -170,6 +169,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; }