From 02efec2664f002850660424265558beb2279fa7d Mon Sep 17 00:00:00 2001 From: ZhouBox Date: Wed, 1 Jul 2026 10:52:41 +0800 Subject: [PATCH] json:change length type from uint16_t to size_t --- include/neuron/json/json.h | 34 +++++++++++++++++----------------- src/parser/neu_json_rw.c | 5 +++-- src/utils/json.c | 34 +++++++++++++++++----------------- 3 files changed, 37 insertions(+), 36 deletions(-) diff --git a/include/neuron/json/json.h b/include/neuron/json/json.h index 9b82bf79d..0c0a23fdb 100644 --- a/include/neuron/json/json.h +++ b/include/neuron/json/json.h @@ -61,63 +61,63 @@ typedef enum neu_json_type { } neu_json_type_e; typedef struct { - int8_t * i8s; - uint16_t length; + int8_t *i8s; + size_t length; } neu_json_value_array_int8_t; typedef struct { uint8_t *u8s; - uint16_t length; + size_t length; } neu_json_value_array_uint8_t; typedef struct { int16_t *i16s; - uint16_t length; + size_t length; } neu_json_value_array_int16_t; typedef struct { uint16_t *u16s; - uint16_t length; + size_t length; } neu_json_value_array_uint16_t; typedef struct { int32_t *i32s; - uint16_t length; + size_t length; } neu_json_value_array_int32_t; typedef struct { uint32_t *u32s; - uint16_t length; + size_t length; } neu_json_value_array_uint32_t; typedef struct { int64_t *i64s; - uint16_t length; + size_t length; } neu_json_value_array_int64_t; typedef struct { uint64_t *u64s; - uint16_t length; + size_t length; } neu_json_value_array_uint64_t; typedef struct { - float * f32s; - uint16_t length; + float *f32s; + size_t length; } neu_json_value_array_float_t; typedef struct { - double * f64s; - uint16_t length; + double *f64s; + size_t length; } neu_json_value_array_double_t; typedef struct { - bool * bools; - uint16_t length; + bool * bools; + size_t length; } neu_json_value_array_bool_t; typedef struct { - char ** p_strs; - uint16_t length; + char **p_strs; + size_t length; } neu_json_value_array_str_t; typedef union neu_json_value { diff --git a/src/parser/neu_json_rw.c b/src/parser/neu_json_rw.c index e6d02d536..d5f8ee112 100644 --- a/src/parser/neu_json_rw.c +++ b/src/parser/neu_json_rw.c @@ -711,7 +711,8 @@ void neu_json_decode_write_tags_req_free(neu_json_write_tags_req_t *req) } if (req->tags[i].t == NEU_JSON_ARRAY_STR && req->tags[i].value.val_array_str.p_strs != NULL) { - for (int j = 0; j < req->tags[i].value.val_array_str.length; j++) { + for (size_t j = 0; j < req->tags[i].value.val_array_str.length; + j++) { free(req->tags[i].value.val_array_str.p_strs[j]); } free(req->tags[i].value.val_array_str.p_strs); @@ -1443,7 +1444,7 @@ void neu_json_decode_write_gtags_req_free(neu_json_write_gtags_req_t *req) } if (req->groups[i].tags[k].t == NEU_JSON_ARRAY_STR && req->groups[i].tags[k].value.val_array_str.p_strs != NULL) { - for (int j = 0; + for (size_t j = 0; j < req->groups[i].tags[k].value.val_array_str.length; j++) { free(req->groups[i].tags[k].value.val_array_str.p_strs[j]); diff --git a/src/utils/json.c b/src/utils/json.c index 6562e8549..e3d8243e5 100644 --- a/src/utils/json.c +++ b/src/utils/json.c @@ -105,7 +105,7 @@ void neu_json_elem_free(neu_json_elem_t *elem) free(elem->v.val_array_double.f64s); break; case NEU_JSON_ARRAY_STR: - for (int i = 0; i < elem->v.val_array_str.length; ++i) { + for (size_t i = 0; i < elem->v.val_array_str.length; ++i) { free(elem->v.val_array_str.p_strs[i]); } free(elem->v.val_array_str.p_strs); @@ -211,7 +211,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_BOOL: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_bool.length; i++) { + for (size_t i = 0; i < ele.v.val_array_bool.length; i++) { json_array_append_new(array, json_boolean(ele.v.val_array_bool.bools[i])); } @@ -222,7 +222,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_INT8: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_int8.length; i++) { + for (size_t i = 0; i < ele.v.val_array_int8.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_int8.i8s[i])); } @@ -233,7 +233,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_UINT8: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_uint8.length; i++) { + for (size_t i = 0; i < ele.v.val_array_uint8.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_uint8.u8s[i])); } @@ -244,7 +244,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_INT16: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_int16.length; i++) { + for (size_t i = 0; i < ele.v.val_array_int16.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_int16.i16s[i])); } @@ -255,7 +255,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_UINT16: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_uint16.length; i++) { + for (size_t i = 0; i < ele.v.val_array_uint16.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_uint16.u16s[i])); } @@ -266,7 +266,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_INT32: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_int32.length; i++) { + for (size_t i = 0; i < ele.v.val_array_int32.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_int32.i32s[i])); } @@ -277,7 +277,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_UINT32: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_uint32.length; i++) { + for (size_t i = 0; i < ele.v.val_array_uint32.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_uint32.u32s[i])); } @@ -288,7 +288,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_INT64: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_int64.length; i++) { + for (size_t i = 0; i < ele.v.val_array_int64.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_int64.i64s[i])); } @@ -299,7 +299,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_UINT64: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_uint64.length; i++) { + for (size_t i = 0; i < ele.v.val_array_uint64.length; i++) { json_array_append_new(array, json_integer(ele.v.val_array_uint64.u64s[i])); } @@ -310,7 +310,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_FLOAT: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_float.length; i++) { + for (size_t i = 0; i < ele.v.val_array_float.length; i++) { json_array_append_new(array, json_real(ele.v.val_array_float.f32s[i])); } @@ -321,7 +321,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_DOUBLE: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_double.length; i++) { + for (size_t i = 0; i < ele.v.val_array_double.length; i++) { json_array_append_new(array, json_real(ele.v.val_array_double.f64s[i])); } @@ -332,7 +332,7 @@ static json_t *encode_object(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_STR: { void *array = json_array(); - for (int i = 0; i < ele.v.val_array_str.length; i++) { + for (size_t i = 0; i < ele.v.val_array_str.length; i++) { json_array_append_new(array, json_string(ele.v.val_array_str.p_strs[i])); } @@ -392,7 +392,7 @@ static json_t *encode_object_ecp(json_t *object, neu_json_elem_t ele) #define ENCODE_ARRAY_TO_STRING(TYPE, FIELD, DATA, FORMAT) \ case TYPE: { \ size_t buffer_size = 2; \ - for (int i = 0; i < ele.v.FIELD.length; i++) { \ + for (size_t i = 0; i < ele.v.FIELD.length; i++) { \ buffer_size += snprintf(NULL, 0, FORMAT, ele.v.FIELD.DATA[i]) + 2; \ } \ char *array_str = (char *) malloc(buffer_size); \ @@ -401,7 +401,7 @@ static json_t *encode_object_ecp(json_t *object, neu_json_elem_t ele) } \ char *ptr = array_str; \ *ptr++ = '['; \ - for (int i = 0; i < ele.v.FIELD.length; i++) { \ + for (size_t i = 0; i < ele.v.FIELD.length; i++) { \ int len = sprintf(ptr, FORMAT, ele.v.FIELD.DATA[i]); \ ptr += len; \ if (i < ele.v.FIELD.length - 1) { \ @@ -442,7 +442,7 @@ static json_t *encode_object_ecp(json_t *object, neu_json_elem_t ele) case NEU_JSON_ARRAY_STR: { size_t buffer_size = 2; - for (int i = 0; i < ele.v.val_array_str.length; i++) { + for (size_t i = 0; i < ele.v.val_array_str.length; i++) { buffer_size += snprintf(NULL, 0, "\"%s\"", ele.v.val_array_str.p_strs[i]) + 2; } @@ -455,7 +455,7 @@ static json_t *encode_object_ecp(json_t *object, neu_json_elem_t ele) char *ptr = array_str; *ptr++ = '['; - for (int i = 0; i < ele.v.val_array_str.length; i++) { + for (size_t i = 0; i < ele.v.val_array_str.length; i++) { int len = sprintf(ptr, "\"%s\"", ele.v.val_array_str.p_strs[i]); ptr += len;