X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=ucw%2Fhashtable.h;h=622f071aa7a663151ab79bc5d3fee36d6268b7cb;hb=25541ea3bb96e9f143f0e23f8ac5b432f2f6f47a;hp=96c41afadb7370da710ca2e0642cac1e5398baad;hpb=fd34e95ac659477f8c5bfeecd9ff9f69e24ec646;p=libucw.git diff --git a/ucw/hashtable.h b/ucw/hashtable.h index 96c41afa..622f071a 100644 --- a/ucw/hashtable.h +++ b/ucw/hashtable.h @@ -655,8 +655,9 @@ static int HASH_PREFIX(delete)(TAC HASH_KEY_DECL) { *bb = b->next; P(free)(TTC b); + T.hash_count--; #ifndef HASH_TABLE_GROWING - if (--T.hash_count < T.hash_min) + if (T.hash_count < T.hash_min) P(rehash)(TTC T.hash_size/2); #endif return 1; @@ -686,8 +687,9 @@ static void HASH_PREFIX(remove)(TAC HASH_NODE *n) ASSERT(b); *bb = b->next; P(free)(TTC b); + T.hash_count--; #ifndef HASH_TABLE_GROWING - if (--T.hash_count < T.hash_min) + if (T.hash_count < T.hash_min) P(rehash)(TTC T.hash_size/2); #endif }