# HG changeset patch # User Mike Becker # Date 1660316201 -7200 # Node ID b059359456370aa5f9e5dabe1ff7da25d1b123cd # Parent d566bd3e6af845d652af57aeeaf99f564ef75b5e fix #200 - key contents not compared in cx_hash_map_put() diff -r d566bd3e6af8 -r b05935945637 src/hash_map.c --- a/src/hash_map.c Fri Aug 12 16:48:59 2022 +0200 +++ b/src/hash_map.c Fri Aug 12 16:56:41 2022 +0200 @@ -86,12 +86,12 @@ elm = elm->next; } - if (elm != NULL && elm->key.hash == hash) { + if (elm != NULL && elm->key.hash == hash && elm->key.len == key.len && + memcmp(elm->key.data.obj, key.data.obj, key.len) == 0) { // overwrite existing element elm->data = value; } else { - // insert new element - + // allocate new element struct cx_hash_map_element_s *e = cxMalloc(allocator, sizeof(struct cx_hash_map_element_s)); if (e == NULL) { return -1;