From: Dmitry Volyntsev Date: Tue, 9 Jan 2024 00:40:42 +0000 (-0800) Subject: Improved array enumeration with length 0. X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=b668b27356f8c6b14cc93f186bd1fbb69af3b072;p=njs.git Improved array enumeration with length 0. The fix eliminates an arithmetic operation with NULL pointer. Found by UndefinedBehaviorSanitizer. --- diff --git a/src/njs_object.c b/src/njs_object.c index 4fab06e7..e8901958 100644 --- a/src/njs_object.c +++ b/src/njs_object.c @@ -591,7 +591,7 @@ njs_object_enumerate_array(njs_vm_t *vm, const njs_array_t *array, njs_value_t *p, *start, *end; njs_array_t *entry; - if (!array->object.fast_array) { + if (!array->object.fast_array || array->length == 0) { return NJS_OK; }