diff --git a/src/node_contextify.cc b/src/node_contextify.cc index 397d1a31b10c5a..17a10119f1de8b 100644 --- a/src/node_contextify.cc +++ b/src/node_contextify.cc @@ -43,7 +43,7 @@ using v8::TryCatch; using v8::UnboundScript; using v8::V8; using v8::Value; -using v8::WeakCallbackData; +using v8::WeakCallbackInfo; class ContextifyContext { @@ -64,7 +64,7 @@ class ContextifyContext { // Allocation failure or maximum call stack size reached if (context_.IsEmpty()) return; - context_.SetWeak(this, WeakCallback); + context_.SetWeak(this, WeakCallback, v8::WeakCallbackType::kParameter); context_.MarkIndependent(); } @@ -302,10 +302,8 @@ class ContextifyContext { } - template - static void WeakCallback(const WeakCallbackData& data) { + static void WeakCallback(const WeakCallbackInfo& data) { ContextifyContext* context = data.GetParameter(); - context->context_.ClearWeak(); delete context; }