qemu-devel
[Top][All Lists]
Advanced

[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 18:06:16 +0200
User-agent: Mutt/1.5.19 (2009-01-05)

On Tue, Dec 29, 2009 at 05:38:17PM +0200, Michael S. Tsirkin wrote:
> 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?

Oh, you said as much already. Sorry about the noise.

> > ---
> >  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
> > 
> > 
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]