Results 4 comments of David Leeds

Hi @fancong5201314, Would this satisfy your needs? ```c int hashmap_base_update(struct hashmap_base *hb, const void *key, void *data, void **original_data); ``` This would be used like this: ```c int r; struct...

Make sure to call `hashmap_init()` and ensure no error is returned prior to using the hashmap. Does that resolve your issue?

The data structure doesn't allocate any memory until you put or reserve. This is by design. If you are referring to this code in `rehash()` https://github.com/DavidLeeds/hashmap/blob/dcf30be31b811e73bd22a6a4a40a6bead56d82b4/src/hashmap.c#L187, the operation on the...

I would argue that there is nothing unclean about `&old_table[old_size]`, since it is identical to `&(*(old_table + old_size))`. Nothing actually attempts to access the memory at `old_table + old_size` =...