diff options
author | Pavel Borzenkov <pavel.borzenkov@gmail.com> | 2011-10-31 22:53:37 +0400 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> | 2011-11-07 08:01:15 +0000 |
commit | ba7806ad92a2f6b1625cfa67d44dc1b71e3be44e (patch) | |
tree | 5973e7795e2898949933af1418f5a54b20d65730 | |
parent | 81beeec429f6bb8b0323e418a6aeef1a17b0cefa (diff) |
cmd: Fix potential NULL pointer dereference
Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
-rw-r--r-- | cmd.c | 11 |
1 files changed, 3 insertions, 8 deletions
@@ -47,7 +47,7 @@ compare(const void *a, const void *b) void add_command(const cmdinfo_t *ci) { - cmdtab = realloc((void *)cmdtab, ++ncmds * sizeof(*cmdtab)); + cmdtab = g_realloc((void *)cmdtab, ++ncmds * sizeof(*cmdtab)); cmdtab[ncmds - 1] = *ci; qsort(cmdtab, ncmds, sizeof(*cmdtab), compare); } @@ -122,12 +122,7 @@ find_command( void add_user_command(char *optarg) { - ncmdline++; - cmdline = realloc(cmdline, ncmdline * sizeof(char *)); - if (!cmdline) { - perror("realloc"); - exit(1); - } + cmdline = g_realloc(cmdline, ++ncmdline * sizeof(char *)); cmdline[ncmdline-1] = optarg; } @@ -190,7 +185,7 @@ void command_loop(void) doneline(input, v); } if (cmdline) { - free(cmdline); + g_free(cmdline); return; } |