diff options
author | gad <gad@FreeBSD.org> | 2003-02-26 03:20:38 +0000 |
---|---|---|
committer | gad <gad@FreeBSD.org> | 2003-02-26 03:20:38 +0000 |
commit | c45907ca760efec7ef6c240175eb9bca51039fb4 (patch) | |
tree | a7197edf6b8f2e19ae7fefbba954fcb7dd6238d4 /usr.sbin | |
parent | 9317dd98415bf426c742032e63da549a3488b8a1 (diff) | |
download | FreeBSD-src-c45907ca760efec7ef6c240175eb9bca51039fb4.zip FreeBSD-src-c45907ca760efec7ef6c240175eb9bca51039fb4.tar.gz |
Fix an error which caused 'free(): error: chunk is already free'
if an entry in the config file included flag 'G'.
MFC after: 3 weeks
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/newsyslog/newsyslog.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/usr.sbin/newsyslog/newsyslog.c b/usr.sbin/newsyslog/newsyslog.c index 1dcbedc..c0b54cf 100644 --- a/usr.sbin/newsyslog/newsyslog.c +++ b/usr.sbin/newsyslog/newsyslog.c @@ -135,6 +135,7 @@ int main(int argc, char **argv) { struct conf_entry *p, *q; + char *savglob; glob_t pglob; int i; @@ -150,11 +151,13 @@ main(int argc, char **argv) if (glob(p->log, GLOB_NOCHECK, NULL, &pglob) != 0) { warn("can't expand pattern: %s", p->log); } else { + savglob = p->log; for (i = 0; i < pglob.gl_matchc; i++) { p->log = pglob.gl_pathv[i]; do_entry(p); } globfree(&pglob); + p->log = savglob; } } p = p->next; |