From: Dmitry Volyntsev Date: Tue, 20 Jun 2017 15:06:19 +0000 (+0300) Subject: Fixed Object.prototype.hasOwnProperty() without arguments. X-Git-Tag: 0.1.11~6 X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=5c179c41b3dd25a23d511c92829130046370437b;p=njs.git Fixed Object.prototype.hasOwnProperty() without arguments. --- diff --git a/njs/njs_object.c b/njs/njs_object.c index caf7bb41..e2d9d06c 100644 --- a/njs/njs_object.c +++ b/njs/njs_object.c @@ -1373,7 +1373,7 @@ njs_object_prototype_has_own_property(njs_vm_t *vm, njs_value_t *args, retval = &njs_string_false; - if (njs_is_object(&args[0])) { + if (nargs > 1 && njs_is_object(&args[0])) { if (njs_is_array(&args[0])) { array = args[0].data.u.array; diff --git a/njs/test/njs_unit_test.c b/njs/test/njs_unit_test.c index 6a0960a9..f8005c58 100644 --- a/njs/test/njs_unit_test.c +++ b/njs/test/njs_unit_test.c @@ -5989,6 +5989,12 @@ static njs_unit_test_t njs_test[] = { nxt_string("var o = {a:1}; o.hasOwnProperty()"), nxt_string("false") }, + { nxt_string("[,].hasOwnProperty()"), + nxt_string("false") }, + + { nxt_string("Object.valueOf.hasOwnProperty()"), + nxt_string("false") }, + { nxt_string("1..hasOwnProperty('b')"), nxt_string("false") },