[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH] Allow usage of qemu_realloc(ptr, 0)
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] Re: [PATCH] Allow usage of qemu_realloc(ptr, 0) |
Date: |
Tue, 29 Dec 2009 17:38:17 +0200 |
User-agent: |
Mutt/1.5.19 (2009-01-05) |
On Mon, Dec 28, 2009 at 04:49:00PM +0100, Aurelien Jarno wrote:
> realloc(ptr, 0) is always allowed by the standard. The return value is
> either NULL or a pointer that can be freed with free().
>
> Allow usage of qemu_realloc(ptr, 0), and return NULL in that case, as
> free(NULL) should always be a nop.
>
> This fixes -kernel with stripped kernels.
>
> Signed-off-by: Aurelien Jarno <address@hidden>
So this is superceded by
loader: don't call realloc(non_null, 0)
right?
> ---
> qemu-malloc.c | 6 +++---
> 1 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/qemu-malloc.c b/qemu-malloc.c
> index 5d9e34d..cf6a1f1 100644
> --- a/qemu-malloc.c
> +++ b/qemu-malloc.c
> @@ -63,10 +63,10 @@ void *qemu_realloc(void *ptr, size_t size)
> {
> if (size) {
> return oom_check(realloc(ptr, size));
> - } else if (allow_zero_malloc()) {
> - return oom_check(realloc(ptr, size ? size : 1));
> + } else if (ptr) {
> + qemu_free(ptr);
> }
> - abort();
> + return NULL;
> }
>
> void *qemu_mallocz(size_t size)
> --
> 1.6.5.3
>
>