aboutsummaryrefslogtreecommitdiffstats
path: root/src/util.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/util.c')
-rw-r--r--src/util.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/util.c b/src/util.c
index 41d8104..1f0da6a 100644
--- a/src/util.c
+++ b/src/util.c
@@ -6,6 +6,7 @@ char *argv0;
void
weprintf(const char *fmt, ...)
{
+ char end;
va_list ap;
va_start(ap, fmt);
@@ -14,9 +15,12 @@ weprintf(const char *fmt, ...)
vfprintf(stderr, fmt, ap);
- if (fmt[0] && fmt[strlen(fmt)-1] == ':') {
+ end = *fmt ? strchr(fmt, '\0')[-1] : '\n';
+ if (end == ':') {
fputc(' ', stderr);
perror(NULL);
+ } else if (end != '\n') {
+ fputc('\n', stderr);
}
va_end(ap);