]> git.kaiwu.me - njs.git/commitdiff
Fixed Object.prototype.isPrototypeOf() without arguments.
authorDmitry Volyntsev <xeioex@nginx.com>
Tue, 20 Jun 2017 14:12:44 +0000 (17:12 +0300)
committerDmitry Volyntsev <xeioex@nginx.com>
Tue, 20 Jun 2017 14:12:44 +0000 (17:12 +0300)
njs/njs_object.c
njs/test/njs_unit_test.c

index dcad7939a4d7c548acc378482897f914701a90f8..caf7bb41e63b7e4cad81244ab405f93b8650242a 100644 (file)
@@ -1413,7 +1413,7 @@ njs_object_prototype_is_prototype_of(njs_vm_t *vm, njs_value_t *args,
 
     retval = &njs_string_false;
 
-    if (njs_is_object(&args[0]) && njs_is_object(&args[1])) {
+    if (nargs > 1 && njs_is_object(&args[0]) && njs_is_object(&args[1])) {
         proto = args[0].data.u.object;
         object = args[1].data.u.object;
 
index 7055c9cdf10d58b349855b2afe01c0b009cbac8e..6a0960a9389233464427d64c460af56fc12cfb29 100644 (file)
@@ -6030,6 +6030,9 @@ static njs_unit_test_t  njs_test[] =
                  "o.isPrototypeOf()"),
       nxt_string("false") },
 
+    { nxt_string("Object.valueOf.isPrototypeOf()"),
+      nxt_string("false") },
+
     { nxt_string("var p = {}; var o = Object.create(p);"
                  "o.isPrototypeOf(1)"),
       nxt_string("false") },