]> git.kaiwu.me - njs.git/commitdiff
Fixed used of uninitialized memory in String.prototype.match().
authorAlexander Borisov <alexander.borisov@nginx.com>
Thu, 11 Jul 2019 12:42:33 +0000 (15:42 +0300)
committerAlexander Borisov <alexander.borisov@nginx.com>
Thu, 11 Jul 2019 12:42:33 +0000 (15:42 +0300)
njs/njs_string.c

index 644031c36073be26a8c7ba9677d509822cc101be..b6a21a542d47a0d76f84217d5c5336a8f71038fe 100644 (file)
@@ -2734,8 +2734,14 @@ njs_string_match_multiple(njs_vm_t *vm, njs_value_t *args,
             start = p + captures[0];
 
             if (captures[1] == 0) {
-                p = nxt_utf8_next(start, end);
-                string.size = end - p;
+                if (start < end) {
+                    p = nxt_utf8_next(start, end);
+                    string.size = end - p;
+
+                } else {
+                    /* To exit the loop. */
+                    p++;
+                }
 
                 size = 0;
                 length = 0;