File CVE-2025-9403.patch of Package jq.43134
--- jq-1.6-a/src/jq_test.c 2018-11-02 02:49:29.000000000 +0100
+++ jq-1.6-b/src/jq_test.c 2026-03-10 16:43:09.085297430 +0100
@@ -2,6 +2,7 @@
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
+#include <math.h>
#include "jv.h"
#include "jq.h"
@@ -157,11 +158,13 @@
printf(" for test at line number %u: %s\n", lineno, prog);
pass = 0;
}
- jv as_string = jv_dump_string(jv_copy(expected), rand() & ~(JV_PRINT_COLOR|JV_PRINT_REFCOUNT));
- jv reparsed = jv_parse_sized(jv_string_value(as_string), jv_string_length_bytes(jv_copy(as_string)));
- assert(jv_equal(jv_copy(expected), jv_copy(reparsed)));
- jv_free(as_string);
- jv_free(reparsed);
+ if (!(jv_get_kind(expected) == JV_KIND_NUMBER && isnan(jv_number_value(expected)))) {
+ jv as_string = jv_dump_string(jv_copy(expected), rand() & ~(JV_PRINT_COLOR|JV_PRINT_REFCOUNT));
+ jv reparsed = jv_parse_sized(jv_string_value(as_string), jv_string_length_bytes(jv_copy(as_string)));
+ assert(jv_equal(jv_copy(expected), jv_copy(reparsed)));
+ jv_free(as_string);
+ jv_free(reparsed);
+ }
jv_free(expected);
jv_free(actual);
}