X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=src%2Flog.c;h=a791450da0a4bba518ca3a7969e05b786d9cf738;hb=112cce261d537006fd97ab43512bca2ffbbb3c7d;hp=05bd3dcea94eeb455112fb8747dc635a6f592401;hpb=8f25becb220b321f0e9bd4b766ae7085a0335466;p=tlsproxy%2Ftlsproxy.git diff --git a/src/log.c b/src/log.c index 05bd3dc..a791450 100644 --- a/src/log.c +++ b/src/log.c @@ -45,7 +45,10 @@ void log_message(int level, const char *file, int line, const char *format, ...) (void)line; #endif - fprintf(stdout, + /* Prevent another thread from interrupting the two printfs(). */ + flockfile(stderr); + + fprintf(stderr, #ifdef DEBUG "%-12s:%-3d " #endif @@ -55,7 +58,9 @@ void log_message(int level, const char *file, int line, const char *format, ...) #endif level_string, (int)pthread_self()); va_start(ap, format); - vfprintf(stdout, format, ap); + vfprintf(stderr, format, ap); va_end(ap); - fprintf(stdout, "\n"); + fprintf(stderr, "\n"); + + funlockfile(stderr); }