aboutsummaryrefslogtreecommitdiffstats
path: root/hicn-light/src/hicn/base/pool.c
diff options
context:
space:
mode:
Diffstat (limited to 'hicn-light/src/hicn/base/pool.c')
-rw-r--r--hicn-light/src/hicn/base/pool.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/hicn-light/src/hicn/base/pool.c b/hicn-light/src/hicn/base/pool.c
index cb650b9e5..a7c50963d 100644
--- a/hicn-light/src/hicn/base/pool.c
+++ b/hicn-light/src/hicn/base/pool.c
@@ -116,7 +116,7 @@ _pool_resize(void ** pool_ptr, size_t elt_size)
vector_len(ph->free_indices) = old_size;
/* We also need to update the bitmap */
- bitmap_ensure_pos(ph->free_bitmap, new_size - 1);
+ bitmap_ensure_pos(&(ph->free_bitmap), new_size - 1);
bitmap_set_range(ph->free_bitmap, old_size, new_size - 1);
/* Reassign pool pointer */
@@ -143,8 +143,8 @@ _pool_get(void ** pool_ptr, void ** elt, size_t elt_size)
off_t free_id = ph->free_indices[l - 1];
vector_len(ph->free_indices)--;
bitmap_unset(ph->free_bitmap, free_id);
- *elt = *pool_ptr + free_id;
- memset(*elt, 0, sizeof(elt));
+ *elt = *pool_ptr + free_id * elt_size;
+ memset(*elt, 0, elt_size);
return free_id;
}