summary refs log tree commit diff stats
path: root/util/hbitmap.c
diff options
context:
space:
mode:
authorMarkus Armbruster <armbru@redhat.com>2014-12-04 15:00:03 +0100
committerMichael Tokarev <mjt@tls.msk.ru>2014-12-10 11:34:15 +0300
commite1cf5582644ef63528993fb2b88dd3b43b9914c6 (patch)
tree003ca1aa1cb4dab97435244da51b25c6ee8de482 /util/hbitmap.c
parent9be71be5bda27b068176ab9b982cf3d7d41a4acd (diff)
downloadfocaccia-qemu-e1cf5582644ef63528993fb2b88dd3b43b9914c6.tar.gz
focaccia-qemu-e1cf5582644ef63528993fb2b88dd3b43b9914c6.zip
util: Use g_new() & friends where that makes obvious sense
g_new(T, n) is neater than g_malloc(sizeof(T) * n).  It's also safer,
for two reasons.  One, it catches multiplication overflowing size_t.
Two, it returns T * rather than void *, which lets the compiler catch
more type errors.

This commit only touches allocations with size arguments of the form
sizeof(T).

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Diffstat (limited to 'util/hbitmap.c')
-rw-r--r--util/hbitmap.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/util/hbitmap.c b/util/hbitmap.c
index b3060e6976..ab139717f5 100644
--- a/util/hbitmap.c
+++ b/util/hbitmap.c
@@ -373,7 +373,7 @@ void hbitmap_free(HBitmap *hb)
 
 HBitmap *hbitmap_alloc(uint64_t size, int granularity)
 {
-    HBitmap *hb = g_malloc0(sizeof (struct HBitmap));
+    HBitmap *hb = g_new0(struct HBitmap, 1);
     unsigned i;
 
     assert(granularity >= 0 && granularity < 64);
@@ -384,7 +384,7 @@ HBitmap *hbitmap_alloc(uint64_t size, int granularity)
     hb->granularity = granularity;
     for (i = HBITMAP_LEVELS; i-- > 0; ) {
         size = MAX((size + BITS_PER_LONG - 1) >> BITS_PER_LEVEL, 1);
-        hb->levels[i] = g_malloc0(size * sizeof(unsigned long));
+        hb->levels[i] = g_new0(unsigned long, size);
     }
 
     /* We necessarily have free bits in level 0 due to the definition