diff -r fe0d69d72bcd -r 35bcb3216c0d src/hash_map.c --- a/src/hash_map.c Thu May 23 20:29:28 2024 +0200 +++ b/src/hash_map.c Thu May 23 20:31:37 2024 +0200 @@ -107,13 +107,13 @@ if (map->base.store_pointer) { memcpy(elm->data, &value, sizeof(void *)); } else { - memcpy(elm->data, value, map->base.item_size); + memcpy(elm->data, value, map->base.elem_size); } } else { // allocate new element struct cx_hash_map_element_s *e = cxMalloc( allocator, - sizeof(struct cx_hash_map_element_s) + map->base.item_size + sizeof(struct cx_hash_map_element_s) + map->base.elem_size ); if (e == NULL) { return -1; @@ -123,7 +123,7 @@ if (map->base.store_pointer) { memcpy(e->data, &value, sizeof(void *)); } else { - memcpy(e->data, value, map->base.item_size); + memcpy(e->data, value, map->base.elem_size); } // copy the key @@ -342,7 +342,7 @@ iter.base.current = cx_hash_map_iter_current_key; break; case CX_MAP_ITERATOR_VALUES: - iter.elem_size = map->base.item_size; + iter.elem_size = map->base.elem_size; iter.base.current = cx_hash_map_iter_current_value; break; default: @@ -417,10 +417,10 @@ if (itemsize > 0) { map->base.base.store_pointer = false; - map->base.base.item_size = itemsize; + map->base.base.elem_size = itemsize; } else { map->base.base.store_pointer = true; - map->base.base.item_size = sizeof(void *); + map->base.base.elem_size = sizeof(void *); } return (CxMap *) map;