diff options
Diffstat (limited to 'src/node_util.cc')
-rw-r--r-- | src/node_util.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/node_util.cc b/src/node_util.cc index 8475468c1f..1c5a2fa9a1 100644 --- a/src/node_util.cc +++ b/src/node_util.cc @@ -10,6 +10,7 @@ using v8::Context; using v8::FunctionCallbackInfo; using v8::Local; using v8::Object; +using v8::Private; using v8::String; using v8::Value; @@ -48,8 +49,10 @@ static void GetHiddenValue(const FunctionCallbackInfo<Value>& args) { Local<Object> obj = args[0].As<Object>(); Local<String> name = args[1].As<String>(); + auto private_symbol = Private::ForApi(env->isolate(), name); + auto maybe_value = obj->GetPrivate(env->context(), private_symbol); - args.GetReturnValue().Set(obj->GetHiddenValue(name)); + args.GetReturnValue().Set(maybe_value.ToLocalChecked()); } static void SetHiddenValue(const FunctionCallbackInfo<Value>& args) { @@ -63,8 +66,10 @@ static void SetHiddenValue(const FunctionCallbackInfo<Value>& args) { Local<Object> obj = args[0].As<Object>(); Local<String> name = args[1].As<String>(); + auto private_symbol = Private::ForApi(env->isolate(), name); + auto maybe_value = obj->SetPrivate(env->context(), private_symbol, args[2]); - args.GetReturnValue().Set(obj->SetHiddenValue(name, args[2])); + args.GetReturnValue().Set(maybe_value.FromJust()); } |