]> git.kaiwu.me - njs.git/commitdiff
Fixed return value type for boolean functions.
authorDmitry Volyntsev <xeioex@nginx.com>
Thu, 26 Apr 2018 16:11:29 +0000 (19:11 +0300)
committerDmitry Volyntsev <xeioex@nginx.com>
Thu, 26 Apr 2018 16:11:29 +0000 (19:11 +0300)
Previously, the functions returned "true" and "false" strings.

njs/njs_array.c
njs/njs_object.c
njs/test/njs_unit_test.c

index 7010ed528e8adcd3c64d1286d31df9e11fbded3b..4d33107351070e8501f7126d1eb150ae877c99e3 100644 (file)
@@ -295,10 +295,10 @@ njs_array_is_array(njs_vm_t *vm, njs_value_t *args,
     const njs_value_t  *value;
 
     if (nargs > 1 && njs_is_array(&args[1])) {
-        value = &njs_string_true;
+        value = &njs_value_true;
 
     } else {
-        value = &njs_string_false;
+        value = &njs_value_false;
     }
 
     vm->retval = *value;
index 1f66a246671ebd7d75cd9fa5dc12232a877c5ed2..ef0d791a889c2478dfb0f21c0a12c13580d8507a 100644 (file)
@@ -695,7 +695,7 @@ njs_object_get_own_property_descriptor(njs_vm_t *vm, njs_value_t *args,
     lhq.key = nxt_string_value("configurable");
     lhq.key_hash = NJS_CONFIGURABLE_HASH;
 
-    setval = (prop->configurable == 1) ? &njs_string_true : &njs_string_false;
+    setval = (prop->configurable == 1) ? &njs_value_true : &njs_value_false;
 
     pr = njs_object_prop_alloc(vm, &njs_object_configurable_string, setval, 1);
     if (nxt_slow_path(pr == NULL)) {
@@ -712,7 +712,7 @@ njs_object_get_own_property_descriptor(njs_vm_t *vm, njs_value_t *args,
     lhq.key = nxt_string_value("enumerable");
     lhq.key_hash = NJS_ENUMERABLE_HASH;
 
-    setval = (prop->enumerable == 1) ? &njs_string_true : &njs_string_false;
+    setval = (prop->enumerable == 1) ? &njs_value_true : &njs_value_false;
 
     pr = njs_object_prop_alloc(vm, &njs_object_enumerable_string, setval, 1);
     if (nxt_slow_path(pr == NULL)) {
@@ -729,7 +729,7 @@ njs_object_get_own_property_descriptor(njs_vm_t *vm, njs_value_t *args,
     lhq.key = nxt_string_value("writable");
     lhq.key_hash = NJS_WRITABABLE_HASH;
 
-    setval = (prop->writable == 1) ? &njs_string_true : &njs_string_false;
+    setval = (prop->writable == 1) ? &njs_value_true : &njs_value_false;
 
     pr = njs_object_prop_alloc(vm, &njs_object_writable_string, setval, 1);
     if (nxt_slow_path(pr == NULL)) {
@@ -826,11 +826,11 @@ njs_object_is_frozen(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs,
     value = njs_arg(args, nargs, 1);
 
     if (!njs_is_object(value)) {
-        vm->retval = njs_string_true;
+        vm->retval = njs_value_true;
         return NXT_OK;
     }
 
-    retval = &njs_string_false;
+    retval = &njs_value_false;
 
     object = value->data.u.object;
     nxt_lvlhsh_each_init(&lhe, &njs_object_hash_proto);
@@ -853,7 +853,7 @@ njs_object_is_frozen(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs,
         }
     }
 
-    retval = &njs_string_true;
+    retval = &njs_value_true;
 
 done:
 
@@ -916,11 +916,11 @@ njs_object_is_sealed(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs,
     value = njs_arg(args, nargs, 1);
 
     if (!njs_is_object(value)) {
-        vm->retval = njs_string_true;
+        vm->retval = njs_value_true;
         return NXT_OK;
     }
 
-    retval = &njs_string_false;
+    retval = &njs_value_false;
 
     object = value->data.u.object;
     nxt_lvlhsh_each_init(&lhe, &njs_object_hash_proto);
@@ -943,7 +943,7 @@ njs_object_is_sealed(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs,
         }
     }
 
-    retval = &njs_string_true;
+    retval = &njs_value_true;
 
 done:
 
@@ -983,12 +983,12 @@ njs_object_is_extensible(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs,
     value = njs_arg(args, nargs, 1);
 
     if (!njs_is_object(value)) {
-        vm->retval = njs_string_false;
+        vm->retval = njs_value_false;
         return NXT_OK;
     }
 
-    retval = value->data.u.object->extensible ? &njs_string_true
-                                              : &njs_string_false;
+    retval = value->data.u.object->extensible ? &njs_value_true
+                                              : &njs_value_false;
 
     vm->retval = *retval;
 
@@ -1490,7 +1490,7 @@ njs_object_prototype_has_own_property(njs_vm_t *vm, njs_value_t *args,
     const njs_value_t   *value, *prop, *retval;
     nxt_lvlhsh_query_t  lhq;
 
-    retval = &njs_string_false;
+    retval = &njs_value_false;
     value = &args[0];
 
     if (njs_is_object(value)) {
@@ -1502,7 +1502,7 @@ njs_object_prototype_has_own_property(njs_vm_t *vm, njs_value_t *args,
             index = njs_string_to_index(prop);
 
             if (index < array->length && njs_is_valid(&array->start[index])) {
-                retval = &njs_string_true;
+                retval = &njs_value_true;
                 goto done;
             }
         }
@@ -1514,7 +1514,7 @@ njs_object_prototype_has_own_property(njs_vm_t *vm, njs_value_t *args,
         ret = nxt_lvlhsh_find(&value->data.u.object->hash, &lhq);
 
         if (ret == NXT_OK) {
-            retval = &njs_string_true;
+            retval = &njs_value_true;
         }
     }
 
@@ -1533,7 +1533,7 @@ njs_object_prototype_is_prototype_of(njs_vm_t *vm, njs_value_t *args,
     njs_object_t       *object, *proto;
     const njs_value_t  *value, *obj, *retval;
 
-    retval = &njs_string_false;
+    retval = &njs_value_false;
     value = &args[0];
     obj = njs_arg(args, nargs, 1);
 
@@ -1545,7 +1545,7 @@ njs_object_prototype_is_prototype_of(njs_vm_t *vm, njs_value_t *args,
             object = object->__proto__;
 
             if (object == proto) {
-                retval = &njs_string_true;
+                retval = &njs_value_true;
                 break;
             }
 
index 88fdfb7e112d7f5f70ce51dcbbeef7c21ba19797..96c11f44721645e093c9c3511d3e445847e4e815 100644 (file)
@@ -2852,9 +2852,15 @@ static njs_unit_test_t  njs_test[] =
     { nxt_string("Array.isArray(1)"),
       nxt_string("false") },
 
+    { nxt_string("Array.isArray(1) ? 'true' : 'false'"),
+      nxt_string("false") },
+
     { nxt_string("Array.isArray([])"),
       nxt_string("true") },
 
+    { nxt_string("Array.isArray([]) ? 'true' : 'false'"),
+      nxt_string("true") },
+
     { nxt_string("Array.of()"),
       nxt_string("") },