txlyre 23 hours ago
parent
commit
4c6dbf3d24
1 changed files with 12 additions and 12 deletions
  1. 12 12
      qirt.c

+ 12 - 12
qirt.c

@@ -324,17 +324,6 @@ static qi_linkedlist_t *qi_linkedlist_push(qi_linkedlist_t *prev, uint64_t i)
   return ll;
 }
 
-static void qi_linkedlist_delete(qi_linkedlist_t *ll)
-{
-  if (ll->prev)
-    ll->prev->next = ll->next;
-
-  if (ll->next)
-    ll->next->prev = ll->prev;
-
-  qi_free(ll);
-}
-
 static void qi_linkedlist_destroy(qi_linkedlist_t *ll)
 {
   qi_linkedlist_t *lln = ll;
@@ -657,7 +646,18 @@ qi_bool qi_table_delete(qi_table_t *table, char *key)
       table->entries[i].value = NULL;
       table->entries[i].is_deleted = true;
 
-      qi_linkedlist_delete(table->entries[i].lln);
+      qi_linkedlist_t *lln = table->entries[i].lln;
+      if (lln->prev)
+        lln->prev->next = lln->next;
+      else
+        table->llh = lln->next;
+
+      if (lln->next)
+        lln->next->prev = lln->prev;
+      else
+        table->llc = lln->prev;
+
+      qi_free(lln);
 
       table->entries[i].lln = NULL;