summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmilio G. Cota <cota@braap.org>2016-10-05 18:34:38 -0400
committerMichael Roth <mdroth@linux.vnet.ibm.com>2016-11-02 17:14:57 -0500
commitf72ca1ac6f7513537a4e8f2032aa0c4ca4013b72 (patch)
treec3e807076f7df8e46c630a5222e5b6433f785bae
parent4d45fe11d1032326dfb623e72f1379835a71b1c6 (diff)
downloadqemu-f72ca1ac6f7513537a4e8f2032aa0c4ca4013b72.tar.gz
qht: simplify qht_reset_size
Sometimes gcc doesn't pick up the fact that 'new' is properly set if 'resize == true', which may generate an unnecessary build warning. Fix it by removing 'resize' and directly checking that 'new' is non-NULL. Signed-off-by: Emilio G. Cota <cota@braap.org> Message-Id: <1475706880-10667-2-git-send-email-cota@braap.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> (cherry picked from commit f555a9d0b3c785b698f32e6879e97d0a4b387314) Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
-rw-r--r--util/qht.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/util/qht.c b/util/qht.c
index 16a8d7950e..af8da3cb2a 100644
--- a/util/qht.c
+++ b/util/qht.c
@@ -410,10 +410,9 @@ void qht_reset(struct qht *ht)
bool qht_reset_size(struct qht *ht, size_t n_elems)
{
- struct qht_map *new;
+ struct qht_map *new = NULL;
struct qht_map *map;
size_t n_buckets;
- bool resize = false;
n_buckets = qht_elems_to_buckets(n_elems);
@@ -421,18 +420,17 @@ bool qht_reset_size(struct qht *ht, size_t n_elems)
map = ht->map;
if (n_buckets != map->n_buckets) {
new = qht_map_create(n_buckets);
- resize = true;
}
qht_map_lock_buckets(map);
qht_map_reset__all_locked(map);
- if (resize) {
+ if (new) {
qht_do_resize(ht, new);
}
qht_map_unlock_buckets(map);
qemu_mutex_unlock(&ht->lock);
- return resize;
+ return !!new;
}
static inline