From: Wolfgang (Blub) Bumiller Date: Mon, 19 Nov 2012 18:19:30 +0000 (+0100) Subject: Fix con_vprintmsg madness X-Git-Tag: 0.1.9~402 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=3391874ebf2c34bba33df1d8ac18eb5a78ef2a21;p=xonotic%2Fgmqcc.git Fix con_vprintmsg madness --- diff --git a/con.c b/con.c index 8073a57..a46a750 100644 --- a/con.c +++ b/con.c @@ -328,18 +328,19 @@ void con_vprintmsg(int level, const char *name, size_t line, const char *msgtype CON_CYAN, CON_RED }; - - int err = !!(level == LVL_ERROR); - int color = (err) ? console.color_err : console.color_out; - int (*print)(const char *, ...) = (err) ? &con_err : &con_out; - + + int err = !!(level == LVL_ERROR); + int color = (err) ? console.color_err : console.color_out; + int (*print)(const char *, ...) = (err) ? &con_err : &con_out; + int (*vprint)(const char *, va_list) = (err) ? &con_verr : &con_vout; + if (color) print("\033[0;%dm%s:%d: \033[0;%dm%s: \033[0m", CON_CYAN, name, (int)line, sel[level], msgtype); else print("%s:%d: %s: ", name, (int)line, msgtype); - - con_verr(msg, ap); - fprintf (stderr, "\n"); + + vprint(msg, ap); + print("\n"); } void con_printmsg(int level, const char *name, size_t line, const char *msgtype, const char *msg, ...) {