2
0
Эх сурвалжийг харах

Use calloc in qemu_mallocz.

Avoids the memset if the allocator has gotten new zeroed
storage from the operating system.

Signed-off-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Richard Henderson 15 жил өмнө
parent
commit
50401022d8
1 өөрчлөгдсөн 4 нэмэгдсэн , 4 устгасан
  1. 4 4
      qemu-malloc.c

+ 4 - 4
qemu-malloc.c

@@ -69,10 +69,10 @@ void *qemu_realloc(void *ptr, size_t size)
 
 void *qemu_mallocz(size_t size)
 {
-    void *ptr;
-    ptr = qemu_malloc(size);
-    memset(ptr, 0, size);
-    return ptr;
+    if (!size && !allow_zero_malloc()) {
+        abort();
+    }
+    return oom_check(calloc(1, size ? size : 1));
 }
 
 char *qemu_strdup(const char *str)