diff options
Diffstat (limited to 'xlators/cluster/ec/src/ec-helpers.c')
-rw-r--r-- | xlators/cluster/ec/src/ec-helpers.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/xlators/cluster/ec/src/ec-helpers.c b/xlators/cluster/ec/src/ec-helpers.c index 195bb6377fa..751d45a63f6 100644 --- a/xlators/cluster/ec/src/ec-helpers.c +++ b/xlators/cluster/ec/src/ec-helpers.c @@ -211,8 +211,8 @@ int32_t ec_dict_set_array(dict_t *dict, char *key, uint64_t value[], } -int32_t ec_dict_del_array(dict_t *dict, char *key, uint64_t value[], - int32_t size) +int32_t +ec_dict_get_array (dict_t *dict, char *key, uint64_t value[], int32_t size) { void *ptr; int32_t len; @@ -246,11 +246,21 @@ int32_t ec_dict_del_array(dict_t *dict, char *key, uint64_t value[], } } - dict_del(dict, key); - return 0; } +int32_t +ec_dict_del_array (dict_t *dict, char *key, uint64_t value[], int32_t size) +{ + int ret = 0; + + ret = ec_dict_get_array (dict, key, value, size); + if (ret == 0) + dict_del(dict, key); + + return ret; +} + int32_t ec_dict_set_number(dict_t * dict, char * key, uint64_t value) { |