diff --git a/AK/HashTable.h b/AK/HashTable.h index d0e5df44b3..a4db28443b 100644 --- a/AK/HashTable.h +++ b/AK/HashTable.h @@ -308,9 +308,9 @@ private: { if (is_empty()) return nullptr; - size_t bucket_index = hash % m_capacity; + for (;;) { - auto& bucket = m_buckets[bucket_index]; + auto& bucket = m_buckets[hash % m_capacity]; if (usable_bucket_for_writing && !*usable_bucket_for_writing && !bucket.used) { *usable_bucket_for_writing = &bucket; @@ -323,7 +323,6 @@ private: return nullptr; hash = double_hash(hash); - bucket_index = hash % m_capacity; } } @@ -348,14 +347,12 @@ private: else if (usable_bucket_for_writing) return *usable_bucket_for_writing; - size_t bucket_index = hash % m_capacity; for (;;) { - auto& bucket = m_buckets[bucket_index]; + auto& bucket = m_buckets[hash % m_capacity]; if (!bucket.used) return bucket; hash = double_hash(hash); - bucket_index = hash % m_capacity; } }