From: Junio C Hamano Date: Tue, 26 May 2009 02:03:20 +0000 (-0700) Subject: Merge branch 'jk/maint-1.6.0-trace-argv' into maint X-Git-Tag: v1.6.3.2~16 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/417653777a1d073f53b2053cf0b0838a35cfc7d5?ds=inline;hp=-c Merge branch 'jk/maint-1.6.0-trace-argv' into maint * jk/maint-1.6.0-trace-argv: fix GIT_TRACE segfault with shell-quoted aliases Conflicts: alias.c --- 417653777a1d073f53b2053cf0b0838a35cfc7d5 diff --combined alias.c index e687fe54c1,4f4d0141cd..372b7d8093 --- a/alias.c +++ b/alias.c @@@ -27,7 -27,7 +27,7 @@@ int split_cmdline(char *cmdline, const int src, dst, count = 0, size = 16; char quoted = 0; - *argv = xmalloc(sizeof(char*) * size); + *argv = xmalloc(sizeof(char *) * size); /* split alias_string */ (*argv)[count++] = cmdline; @@@ -38,10 -38,7 +38,7 @@@ while (cmdline[++src] && isspace(cmdline[src])) ; /* skip */ - if (count >= size) { - size += 16; - *argv = xrealloc(*argv, sizeof(char *) * size); - } + ALLOC_GROW(*argv, count+1, size); (*argv)[count++] = cmdline + dst; } else if (!quoted && (c == '\'' || c == '"')) { quoted = c; @@@ -72,6 -69,9 +69,9 @@@ return error("unclosed quote"); } + ALLOC_GROW(*argv, count+1, size); + (*argv)[count] = NULL; + return count; }