Merge pull request #2706 from fengzeroz/main

filter array in metas
This commit is contained in:
fengzeroz
2026-03-10 14:13:46 +08:00
committed by GitHub
2 changed files with 11 additions and 1 deletions
+5
View File
@@ -345,6 +345,11 @@ typedef struct {
uint8_t precision;
} neu_dvalue_t;
static inline bool neu_dvalue_is_array(const neu_dvalue_t *dvalue)
{
return dvalue->type >= NEU_TYPE_ARRAY_CHAR;
}
static inline bool neu_equal_dvalue(const neu_dvalue_t *one, neu_dvalue_t *two)
{
if (one == NULL || two == NULL) {
+6 -1
View File
@@ -849,7 +849,12 @@ bool neu_driver_cache_update_change(neu_driver_cache_t *cache,
}
elem->metas = calloc(n_meta, sizeof(neu_tag_meta_t));
for (int i = 0; i < n_meta; i++) {
memcpy(&elem->metas[i], &metas[i], sizeof(neu_tag_meta_t));
if (!neu_dvalue_is_array(&metas[i].value)) {
memcpy(&elem->metas[i], &metas[i], sizeof(neu_tag_meta_t));
} else {
neu_free_dvalue(&metas[i].value);
elem->metas[i].value.type = NEU_TYPE_INT8;
}
}
elem->n_meta = n_meta;