[Mesa-dev] [PATCH 1/5] util/set: don't compare against deleted entries

Connor Abbott cwabbott0 at gmail.com
Sat Nov 14 18:59:40 PST 2015


Not sure how this wasn't already caught by valgrind, but it fixes an
issue with the vectorizer.

Signed-off-by: Connor Abbott <cwabbott0 at gmail.com>
---
 src/util/set.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/util/set.c b/src/util/set.c
index f01f869..331ff58 100644
--- a/src/util/set.c
+++ b/src/util/set.c
@@ -282,7 +282,8 @@ set_add(struct set *ht, uint32_t hash, const void *key)
        * If freeing of old keys is required to avoid memory leaks,
        * perform a search before inserting.
        */
-      if (entry->hash == hash &&
+      if (entry_is_present(entry) &&
+          entry->hash == hash &&
           ht->key_equals_function(key, entry->key)) {
          entry->key = key;
          return entry;
-- 
2.4.3



More information about the mesa-dev mailing list