Эта часть могла бы всегда возвращать одно и то же хеш-значение каждому ключу, не так ли?
Но я считаю, что значения, связанные с ключами, они меняют при каждом обновлении ...
Как исправить одно и то же значение каждого ключа при каждом обновлении?
u_int64_t* ReturnValue=NULL;
u_int32_t a;
int sz;
a = nothl(as->addr32[0]);
sz = update(size);
if (ReturnValue=(u_int64_t*)g_hash_table_lookup(hashtable, (gpointer)&a))
{
g_hash_table_insert(hashtable, (gpointer)&a, (gpointer)ReturnValue);
// I didnt't use g_hash_table_replace() because it will free the key then the value change
}
else g_hash_table_insert(hashtable, (gpointer)&a, (gpointer)&sz)