On Mon, Aug 18, 2014 at 03:32:21PM +0400, Michael Tokarev wrote: > 18.08.2014 11:51, zhanghailiang пишет: > > Here we don't check the return value of malloc() which may fail. > > Use the g_malloc() instead, which will abort the program when > > there is not enough memory. > > > > Signed-off-by: zhanghailiang <zhang.zhanghaili...@huawei.com> > > Reviewed-by: Alex Bennée <alex.ben...@linaro.org> > > --- > > slirp/misc.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/slirp/misc.c b/slirp/misc.c > > index b8eb74c..f7fe497 100644 > > --- a/slirp/misc.c > > +++ b/slirp/misc.c > > @@ -54,7 +54,7 @@ int add_exec(struct ex_list **ex_ptr, int do_pty, char > > *exec, > > } > > > > tmp_ptr = *ex_ptr; > > - *ex_ptr = (struct ex_list *)malloc(sizeof(struct ex_list)); > > + *ex_ptr = (struct ex_list *)g_malloc(sizeof(struct ex_list)); > > There's a convinient macro in glib, g_new(typename, numelts). Also > there's a less commonly used g_renew() which is like realloc, but it > is not applicable here. >
If you are going to respin anyway, I recommend dropping the superfluous (struct ex_list *) cast here as well. > > (*ex_ptr)->ex_fport = port; > > (*ex_ptr)->ex_addr = addr; > > (*ex_ptr)->ex_pty = do_pty; > > @@ -235,7 +235,7 @@ strdup(str) > > { > > char *bptr; > > > > - bptr = (char *)malloc(strlen(str)+1); > > + bptr = (char *)g_malloc(strlen(str)+1); > > strcpy(bptr, str); > > > > return bptr; > > Oh. And this one should be removed completely. It is a reimplementation > of strdup() for system which lacks it. This code should go, we don't build > on such a system anyway and we always have g_strdup(). There's one more > usage of strdup() in this file, btw. > > I'm sorry for being so picky, and you're already at v7, but heck.. We should > be more active at reviewing patches :) > > Thanks, > > /mjt >