FcHashTableAddInternal: Compare against the right key
We were comparing the passed in key with the ready-to-insert key rather than the key in the hashtable, so if you ever had a hash conflicts we'll never insert the new item. https://bugs.freedesktop.org/show_bug.cgi?id=101889
This commit is contained in:
parent
fd2ad1147a
commit
4ff7155f5c
|
@ -178,7 +178,7 @@ FcHashTableAddInternal (FcHashTable *table,
|
||||||
for (prev = &table->buckets[hash % FC_HASH_SIZE];
|
for (prev = &table->buckets[hash % FC_HASH_SIZE];
|
||||||
(b = fc_atomic_ptr_get (prev)); prev = &(b->next))
|
(b = fc_atomic_ptr_get (prev)); prev = &(b->next))
|
||||||
{
|
{
|
||||||
if (!table->compare_func (bucket->key, key))
|
if (!table->compare_func (b->key, key))
|
||||||
{
|
{
|
||||||
if (replace)
|
if (replace)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue