* strace.c (verror_msg): Rewrite without use of heap memory allocation

This commit is contained in:
2011-06-09 15:50:41 +00:00
parent 3e90b29929
commit 44d053218b

View File

@ -228,18 +228,14 @@ static void die(void)
static void verror_msg(int err_no, const char *fmt, va_list p) static void verror_msg(int err_no, const char *fmt, va_list p)
{ {
char *msg; fflush(NULL);
fprintf(stderr, "%s: ", progname);
msg = NULL; vfprintf(stderr, fmt, p);
vasprintf(&msg, fmt, p); if (err_no)
if (msg) { fprintf(stderr, ": %s\n", strerror(err_no));
fflush(NULL); else
if (err_no) putc('\n', stderr);
fprintf(stderr, "%s: %s: %s\n", progname, msg, strerror(err_no)); fflush(stderr);
else
fprintf(stderr, "%s: %s\n", progname, msg);
free(msg);
}
} }
void error_msg(const char *fmt, ...) void error_msg(const char *fmt, ...)