diff options
author | Michaël Zasso <targos@protonmail.com> | 2018-09-07 17:07:13 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2018-09-07 20:59:13 +0200 |
commit | 586db2414a338e1bf6eaf6e672a3adc7ce309f6a (patch) | |
tree | 139fa972aef648481ddee22a3a85b99707d28df5 /deps/v8/src/runtime/runtime-proxy.cc | |
parent | 12ed7c94e5160aa6d38e3d2cb2a73dae0a6f9342 (diff) | |
download | node-new-586db2414a338e1bf6eaf6e672a3adc7ce309f6a.tar.gz |
deps: update V8 to 6.9.427.22
PR-URL: https://github.com/nodejs/node/pull/21983
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Diffstat (limited to 'deps/v8/src/runtime/runtime-proxy.cc')
-rw-r--r-- | deps/v8/src/runtime/runtime-proxy.cc | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/deps/v8/src/runtime/runtime-proxy.cc b/deps/v8/src/runtime/runtime-proxy.cc index 5340d31843..8101ea6d29 100644 --- a/deps/v8/src/runtime/runtime-proxy.cc +++ b/deps/v8/src/runtime/runtime-proxy.cc @@ -41,19 +41,23 @@ RUNTIME_FUNCTION(Runtime_JSProxyGetTarget) { RUNTIME_FUNCTION(Runtime_GetPropertyWithReceiver) { HandleScope scope(isolate); - DCHECK_EQ(3, args.length()); + DCHECK_EQ(4, args.length()); CONVERT_ARG_HANDLE_CHECKED(JSReceiver, holder, 0); CONVERT_ARG_HANDLE_CHECKED(Object, key, 1); CONVERT_ARG_HANDLE_CHECKED(Object, receiver, 2); + CONVERT_ARG_HANDLE_CHECKED(Smi, on_non_existent, 3); bool success = false; LookupIterator it = LookupIterator::PropertyOrElement(isolate, receiver, key, &success, holder); if (!success) { DCHECK(isolate->has_pending_exception()); - return isolate->heap()->exception(); + return ReadOnlyRoots(isolate).exception(); } - RETURN_RESULT_OR_FAILURE(isolate, Object::GetProperty(&it)); + + RETURN_RESULT_OR_FAILURE( + isolate, Object::GetProperty( + &it, static_cast<OnNonExistent>(on_non_existent->value()))); } RUNTIME_FUNCTION(Runtime_SetPropertyWithReceiver) { @@ -71,11 +75,11 @@ RUNTIME_FUNCTION(Runtime_SetPropertyWithReceiver) { &success, holder); if (!success) { DCHECK(isolate->has_pending_exception()); - return isolate->heap()->exception(); + return ReadOnlyRoots(isolate).exception(); } Maybe<bool> result = Object::SetSuperProperty( &it, value, language_mode, Object::MAY_BE_STORE_FROM_KEYED); - MAYBE_RETURN(result, isolate->heap()->exception()); + MAYBE_RETURN(result, ReadOnlyRoots(isolate).exception()); return *isolate->factory()->ToBoolean(result.FromJust()); } @@ -101,7 +105,7 @@ RUNTIME_FUNCTION(Runtime_CheckProxyHasTrap) { CONVERT_ARG_HANDLE_CHECKED(JSReceiver, target, 1); Maybe<bool> result = JSProxy::CheckHasTrap(isolate, name, target); - if (!result.IsJust()) return isolate->heap()->exception(); + if (!result.IsJust()) return ReadOnlyRoots(isolate).exception(); return isolate->heap()->ToBoolean(result.FromJust()); } |