[njs] Fixed for-in iteration of typed array values.
Dmitry Volyntsev
xeioex at nginx.com
Thu Feb 25 16:14:24 UTC 2021
details: https://hg.nginx.org/njs/rev/67b45ebbb6e4
branches:
changeset: 1613:67b45ebbb6e4
user: Artem S. Povalyukhin <artem.povaluhin at gmail.com>
date: Thu Feb 25 10:06:18 2021 +0300
description:
Fixed for-in iteration of typed array values.
diffstat:
src/njs_object.c | 6 ++++++
src/test/njs_unit_test.c | 3 +++
2 files changed, 9 insertions(+), 0 deletions(-)
diffs (29 lines):
diff -r 804afbc89677 -r 67b45ebbb6e4 src/njs_object.c
--- a/src/njs_object.c Wed Feb 24 16:57:05 2021 +0000
+++ b/src/njs_object.c Thu Feb 25 10:06:18 2021 +0300
@@ -444,6 +444,12 @@ njs_object_enumerate_value(njs_vm_t *vm,
kind);
break;
+ case NJS_TYPED_ARRAY:
+ ret = njs_object_enumerate_typed_array(vm,
+ (njs_typed_array_t *) object,
+ items, kind);
+ break;
+
case NJS_OBJECT_STRING:
obj_val = (njs_object_value_t *) object;
diff -r 804afbc89677 -r 67b45ebbb6e4 src/test/njs_unit_test.c
--- a/src/test/njs_unit_test.c Wed Feb 24 16:57:05 2021 +0000
+++ b/src/test/njs_unit_test.c Thu Feb 25 10:06:18 2021 +0300
@@ -2834,6 +2834,9 @@ static njs_unit_test_t njs_test[] =
"for (var a in o) {arr.push(a)}; arr"),
njs_str("b") },
+ { njs_str("var a = []; for (var k in new Uint8Array([1,2,3])) { a.push(k); }; a"),
+ njs_str("0,1,2") },
+
/* switch. */
{ njs_str("switch"),
More information about the nginx-devel
mailing list