int lprintf(OutputLevels pri, const char *s, ...) { int r=0; char msg[MAX_MESSAGE_SIZE]; int lvl=pri; va_list v; va_start(v,s); doom_vsnprintf(msg,sizeof(msg),s,v); /* print message in buffer */ va_end(v); if (lvl&cons_output_mask) /* mask output as specified */ { #ifdef _WIN32 // do not crash with unicode dirs if (fileno(stdout) != -1) #endif r=fprintf(stdout,"%s",msg); #ifdef _WIN32 I_ConPrintString(msg); #endif } if (!isatty(1) && lvl&cons_error_mask) /* if stdout redirected */ r=fprintf(stderr,"%s",msg); /* select output at console */ return r; }
int lprintf(OutputLevels pri, const char *s, ...) { int r=0; char msg[MAX_MESSAGE_SIZE]; int lvl=pri; va_list v; va_start(v,s); #ifdef HAVE_VSNPRINTF vsnprintf(msg,sizeof(msg),s,v); /* print message in buffer */ #else vsprintf(msg,s,v); #endif va_end(v); logg(msg); return r; if (lvl&cons_output_mask) /* mask output as specified */ { r=fprintf(stdout,"%s",msg); #ifdef _WIN32 I_ConPrintString(msg); #endif } if (!isatty(1) && lvl&cons_error_mask) /* if stdout redirected */ r=fprintf(stderr,"%s",msg); /* select output at console */ return r; }