diff --git a/src/utils.h b/src/utils.h index f8fa99f..f9bdbb9 100644 --- a/src/utils.h +++ b/src/utils.h @@ -294,9 +294,14 @@ class NodeObject : public ObjectWrap template static inline T *Unwrap(Local handle) { if (handle.IsEmpty() || handle->InternalFieldCount() == 0) { - return NULL; + return nullptr; } - void *ptr = handle->GetAlignedPointerFromInternalField(0); + void *ptr = nullptr; +#if defined(V8_MAJOR_VERSION) && V8_MAJOR_VERSION >= 14 + ptr = handle->GetAlignedPointerFromInternalField(0, v8::kEmbedderDataTypeTagDefault); +#else + ptr = handle->GetAlignedPointerFromInternalField(0); +#endif NodeObject *obj = static_cast(ptr); return static_cast(obj); }