Sat, 13 Dec 2025 13:55:27 +0100
fix that cxJsonCompare() is not symmetric when comparing integer with double
| src/json.c | file | annotate | diff | comparison | revisions |
--- a/src/json.c Sat Dec 13 13:33:43 2025 +0100 +++ b/src/json.c Sat Dec 13 13:55:27 2025 +0100 @@ -1465,7 +1465,11 @@ case CX_JSON_STRING: return cx_strcmp(json->string, other->string); case CX_JSON_INTEGER: - return cx_vcmp_int64(json->integer, cxJsonAsInteger(other)); + if (other->type == CX_JSON_INTEGER) { + return cx_vcmp_int64(json->integer, other->integer); + } else { + return cx_vcmp_double(cxJsonAsDouble(json), other->number); + } case CX_JSON_NUMBER: return cx_vcmp_double(json->number, cxJsonAsDouble(other)); case CX_JSON_LITERAL: