X-Git-Url: https://git.octo.it/?p=collectd.git;a=blobdiff_plain;f=src%2Fdaemon%2Futils_cache.c;h=e63a20e548e0369ae0ec3faa9c2ee10144ba1adb;hp=cdb764224cca406a8eff065c06c45a5b003f5cd5;hb=9f8dc5668faf5432dcb1430017bd7a1c383c2453;hpb=136f4be1b628d66f94b27a7609a7774e86250b54 diff --git a/src/daemon/utils_cache.c b/src/daemon/utils_cache.c index cdb76422..e63a20e5 100644 --- a/src/daemon/utils_cache.c +++ b/src/daemon/utils_cache.c @@ -28,10 +28,10 @@ #include "collectd.h" -#include "common.h" -#include "meta_data.h" #include "plugin.h" -#include "utils_avltree.h" +#include "utils/avltree/avltree.h" +#include "utils/common/common.h" +#include "utils/metadata/meta_data.h" #include "utils_cache.h" #include @@ -203,6 +203,10 @@ static int uc_insert(const data_set_t *ds, const value_list_t *vl, ce->interval = vl->interval; ce->state = STATE_UNKNOWN; + if (vl->meta != NULL) { + ce->meta = meta_data_clone(vl->meta); + } + if (c_avl_insert(cache_tree, key_copy, ce) != 0) { sfree(key_copy); ERROR("uc_insert: c_avl_insert failed."); @@ -889,13 +893,12 @@ int uc_iterator_get_values(uc_iter_t *iter, value_t **ret_values, if ((iter == NULL) || (iter->entry == NULL) || (ret_values == NULL) || (ret_num == NULL)) return -1; - *ret_values = calloc(iter->entry->values_num, sizeof(*iter->entry->values_raw)); if (*ret_values == NULL) return -1; for (size_t i = 0; i < iter->entry->values_num; ++i) - *ret_values[i] = iter->entry->values_raw[i]; + (*ret_values)[i] = iter->entry->values_raw[i]; *ret_num = iter->entry->values_num;