From 14aca89361c2b63d9f124dfc56d4937cbc8e3a45 Mon Sep 17 00:00:00 2001 From: Matheus Date: Sun, 17 Sep 2023 01:31:55 -0300 Subject: [PATCH] hashtable: fix linked list --- kernel-src/lib/hashtable.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kernel-src/lib/hashtable.c b/kernel-src/lib/hashtable.c index ab1632c0..6fcf951f 100644 --- a/kernel-src/lib/hashtable.c +++ b/kernel-src/lib/hashtable.c @@ -4,6 +4,7 @@ #include #include #include +#include static scache_t *hashentrycache; @@ -44,11 +45,15 @@ int hashtable_set(hashtable_t *table, void *value, void *key, size_t keysize, bo memcpy(entry->key, key, keysize); entry->prev = NULL; entry->next = table->entries[tableoffset]; + if (entry->next) + entry->next->prev = entry; + entry->value = value; entry->keysize = keysize; entry->hash = hash; table->entries[tableoffset] = entry; ++table->entrycount; + return 0; }