version 1.15, 2003/06/10 22:20:44 |
version 1.16, 2003/09/26 21:26:05 |
|
|
{ |
{ |
int ch, clen, debug, i, l, magic, n, nargs, rval; |
int ch, clen, debug, i, l, magic, n, nargs, rval; |
char *c, *cmd, *p, *q; |
char *c, *cmd, *p, *q; |
|
const char *c2; |
size_t len; |
size_t len; |
|
|
debug = 0; |
debug = 0; |
|
|
*/ |
*/ |
for (l = strlen(cmd), i = 0; i < nargs; i++) |
for (l = strlen(cmd), i = 0; i < nargs; i++) |
l += strlen(argv[i+1]); |
l += strlen(argv[i+1]); |
if (l > clen && (c = realloc(c, clen = l)) == NULL) |
if (l > clen) { |
err(1, NULL); |
if ((c2 = realloc(c, l)) == NULL) |
|
err(1, NULL); |
|
c = c2; |
|
clen = l; |
|
} |
|
|
/* Expand command argv references. */ |
/* Expand command argv references. */ |
for (p = cmd, q = c; *p != '\0'; ++p) |
for (p = cmd, q = c; *p != '\0'; ++p) |