version 1.25, 2003/06/30 22:13:32 |
version 1.26, 2003/11/17 17:12:10 |
|
|
bufsize = 1024; |
bufsize = 1024; |
else |
else |
bufsize *= 2; |
bufsize *= 2; |
buffer = realloc(buffer, bufsize); |
buffer = xrealloc(buffer, bufsize, NULL); |
if (buffer == NULL) |
|
errx(1, "out of memory"); |
|
} |
} |
memcpy(buffer+current, c, n); |
memcpy(buffer+current, c, n); |
current += n; |
current += n; |
|
|
bufsize = 1024; |
bufsize = 1024; |
else |
else |
bufsize *= 2; |
bufsize *= 2; |
buffer = realloc(buffer, bufsize); |
buffer = xrealloc(buffer, bufsize, NULL); |
if (buffer == NULL) |
|
errx(1, "out of memory"); |
|
} |
} |
buffer[current++] = c; |
buffer[current++] = c; |
} |
} |
|
|
char *errbuf; |
char *errbuf; |
|
|
errlen = regerror(er, re, NULL, 0); |
errlen = regerror(er, re, NULL, 0); |
errbuf = xalloc(errlen); |
errbuf = xalloc(errlen, |
|
"malloc in regerror: %lu", (unsigned long)errlen); |
regerror(er, re, errbuf, errlen); |
regerror(er, re, errbuf, errlen); |
errx(1, "%s at line %lu: regular expression error: %s", |
errx(1, "%s at line %lu: regular expression error: %s", |
CURRENT_NAME, CURRENT_LINE, errbuf); |
CURRENT_NAME, CURRENT_LINE, errbuf); |
|
|
if (error != 0) |
if (error != 0) |
exit_regerror(error, &re); |
exit_regerror(error, &re); |
|
|
pmatch = xalloc(sizeof(regmatch_t) * (re.re_nsub+1)); |
pmatch = xalloc(sizeof(regmatch_t) * (re.re_nsub+1), NULL); |
do_subst(argv[2], &re, |
do_subst(argv[2], &re, |
argc > 4 && argv[4] != NULL ? argv[4] : "", pmatch); |
argc > 4 && argv[4] != NULL ? argv[4] : "", pmatch); |
free(pmatch); |
free(pmatch); |
|
|
if (error != 0) |
if (error != 0) |
exit_regerror(error, &re); |
exit_regerror(error, &re); |
|
|
pmatch = xalloc(sizeof(regmatch_t) * (re.re_nsub+1)); |
pmatch = xalloc(sizeof(regmatch_t) * (re.re_nsub+1), NULL); |
if (argv[4] == NULL || argc == 4) |
if (argv[4] == NULL || argc == 4) |
do_regexpindex(argv[2], &re, pmatch); |
do_regexpindex(argv[2], &re, pmatch); |
else |
else |