From debd7ef5e87c150e5b77319875be1f6b94293b3b Mon Sep 17 00:00:00 2001 From: dan Date: Mon, 6 Nov 2000 23:13:14 +0000 Subject: [PATCH] Added wmessage() for printing a variable formatted message to stderr with the program name prepended to it. --- WINGs/WUtil.h | 3 ++- WINGs/error.c | 41 ++++++++++++++++++++++++++++++++++------- 2 files changed, 36 insertions(+), 8 deletions(-) diff --git a/WINGs/WUtil.h b/WINGs/WUtil.h index 00d3929e..0840aed2 100644 --- a/WINGs/WUtil.h +++ b/WINGs/WUtil.h @@ -210,8 +210,9 @@ waborthandler* wsetabort(waborthandler*); /* don't free the returned string */ char* wstrerror(int errnum); -void wfatal(const char *msg, ...); +void wmessage(const char *msg, ...); void wwarning(const char *msg, ...); +void wfatal(const char *msg, ...); void wsyserror(const char *msg, ...); void wsyserrorwithcode(int error, const char *msg, ...); diff --git a/WINGs/error.c b/WINGs/error.c index b60d573f..dc9642c2 100644 --- a/WINGs/error.c +++ b/WINGs/error.c @@ -62,14 +62,14 @@ wstrerror(int errnum) } -/************************************************************************** - * Prints a fatal error message with variable arguments and terminates +/********************************************************************* + * Prints a message with variable arguments * * msg - message to print with optional formatting - * ... - arguments to use on formatting - **************************************************************************/ -void -wfatal(const char *msg, ...) + * ... - arguments to use on formatting + *********************************************************************/ +void +wmessage(const char *msg, ...) { va_list args; char buf[MAXLINE]; @@ -80,7 +80,7 @@ wfatal(const char *msg, ...) strcat(buf,"\n"); fflush(stdout); fputs(_WINGS_progname, stderr); - fputs(" fatal error: ",stderr); + fputs(": ",stderr); fputs(buf, stderr); fflush(stdout); fflush(stderr); @@ -116,6 +116,33 @@ wwarning(const char *msg, ...) } +/************************************************************************** + * Prints a fatal error message with variable arguments and terminates + * + * msg - message to print with optional formatting + * ... - arguments to use on formatting + **************************************************************************/ +void +wfatal(const char *msg, ...) +{ + va_list args; + char buf[MAXLINE]; + + va_start(args, msg); + + vsnprintf(buf, MAXLINE-3, msg, args); + strcat(buf,"\n"); + fflush(stdout); + fputs(_WINGS_progname, stderr); + fputs(" fatal error: ",stderr); + fputs(buf, stderr); + fflush(stdout); + fflush(stderr); + + va_end(args); +} + + /********************************************************************* * Prints a system error message with variable arguments *