]> git.kaiwu.me - njs.git/commitdiff
Avoiding casting Infinity to integer in String.fromCodePoint().
authorDmitry Volyntsev <xeioex@nginx.com>
Tue, 9 Jan 2024 06:21:14 +0000 (22:21 -0800)
committerDmitry Volyntsev <xeioex@nginx.com>
Tue, 9 Jan 2024 06:21:14 +0000 (22:21 -0800)
Found by UndefinedBehaviorSanitizer.

src/njs_string.c

index 2ee1e719fce319069b02a3d6027be19c90fccd43..3b3ca12cf6e6c28c9e0b4aacd9d5b192d70bd66c 100644 (file)
@@ -1617,7 +1617,7 @@ njs_string_from_char_code(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs,
 
         if (is_point) {
             num = njs_number(&args[i]);
-            if (isnan(num)) {
+            if (isnan(num) || isinf(num)) {
                 goto range_error;
             }