diff options
author | Katharina Fey <kookie@spacekookie.de> | 2019-07-14 18:41:07 +0100 |
---|---|---|
committer | Katharina Fey <kookie@spacekookie.de> | 2019-07-14 18:47:18 +0100 |
commit | f6e83e64abbf76bbfddc90f885f7c3be379ecf2c (patch) | |
tree | 726ff7b647e7cd1704b30638d8adf73c50a15dfe /utils.c | |
parent | 98852464c7d4cd3a6a08d0208378506fdce822d6 (diff) |
Various improvements around HASH nodes
The example previously would lead to corrupt memory
when running for items that needed to re-hash the
hash array. This has been fixed.
Secondly, all HASH node memory leaks are now fixed,
that resulted from badly tracking objects through the
resize process. A new function `hash_free_shallow` was
added to help with this. The function `array_free_shallow`
is unused but might become useful in the future and so
was not removed.
The hash strategy is still garbage but this can be fixed later :)
Diffstat (limited to 'utils.c')
-rw-r--r-- | utils.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -49,7 +49,7 @@ err_t _array_remove(void **ptr, size_t idx, size_t len, void **out) err_t _hash(char *str, size_t len, size_t *out) { CHECK(str, INVALID_PARAMS) - CHECK((len < 0), INVALID_PARAMS) + CHECK((len > 0), INVALID_PARAMS) // Implements the "murmur" non-cryptographic hash |