From ddb7e387331c70313c9393bf2ce82fdb7e6bac7f Mon Sep 17 00:00:00 2001 From: Igor Sysoev Date: Tue, 13 Mar 2018 19:51:25 +0300 Subject: [PATCH] Removed unused null proto hash. --- njs/njs_builtin.c | 12 ------------ njs/njs_object.c | 1 - njs/njs_vm.c | 5 ----- njs/njs_vm.h | 1 - 4 files changed, 19 deletions(-) diff --git a/njs/njs_builtin.c b/njs/njs_builtin.c index d4e6267a..01c948f3 100644 --- a/njs/njs_builtin.c +++ b/njs/njs_builtin.c @@ -222,24 +222,12 @@ njs_builtin_objects_create(njs_vm_t *vm) { njs_memory_error_constructor, { NJS_SKIP_ARG, NJS_STRING_ARG } }, }; - static const njs_object_prop_t null_proto_property = { - .type = NJS_WHITEOUT, - .name = njs_string("__proto__"), - .value = njs_value(NJS_NULL, 0, 0.0), - }; - static const njs_object_prop_t function_prototype_property = { .type = NJS_NATIVE_GETTER, .name = njs_string("prototype"), .value = njs_native_getter(njs_function_prototype_create), }; - ret = njs_object_hash_create(vm, &vm->shared->null_proto_hash, - &null_proto_property, 1); - if (nxt_slow_path(ret != NXT_OK)) { - return NXT_ERROR; - } - ret = njs_object_hash_create(vm, &vm->shared->function_prototype_hash, &function_prototype_property, 1); if (nxt_slow_path(ret != NXT_OK)) { diff --git a/njs/njs_object.c b/njs/njs_object.c index 7f51f4fb..614ada8e 100644 --- a/njs/njs_object.c +++ b/njs/njs_object.c @@ -299,7 +299,6 @@ njs_object_create(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs, object->__proto__ = args[1].data.u.object; } else { - object->shared_hash = vm->shared->null_proto_hash; object->__proto__ = NULL; } diff --git a/njs/njs_vm.c b/njs/njs_vm.c index f8e39719..7e8ff996 100644 --- a/njs/njs_vm.c +++ b/njs/njs_vm.c @@ -1198,11 +1198,6 @@ njs_object_property_query(njs_vm_t *vm, njs_property_query_t *pq, case NJS_PROPERTY_QUERY_IN: prop = pq->lhq.value; - - if (prop->type == NJS_WHITEOUT) { - return NXT_DECLINED; - } - break; } diff --git a/njs/njs_vm.h b/njs/njs_vm.h index 871aeaf5..58c9b055 100644 --- a/njs/njs_vm.h +++ b/njs/njs_vm.h @@ -1022,7 +1022,6 @@ typedef struct { struct njs_vm_shared_s { nxt_lvlhsh_t keywords_hash; nxt_lvlhsh_t values_hash; - nxt_lvlhsh_t null_proto_hash; nxt_lvlhsh_t function_prototype_hash; njs_object_t objects[NJS_OBJECT_MAX]; -- 2.47.3