From 482ab33c037582db9428600e1c840586b86cebb8 Mon Sep 17 00:00:00 2001 From: Deomid Ryabkov Date: Wed, 30 Mar 2016 15:18:40 +0200 Subject: [PATCH] Move printing log prefix into a separate function Reduces code size a bit and makes it cleaner PUBLISHED_FROM=c08064102dc64f59dcdc1f80655f32e1ed94c850 --- mongoose.c | 23 ++++++++++++----------- mongoose.h | 11 ++++++----- 2 files changed, 18 insertions(+), 16 deletions(-) diff --git a/mongoose.c b/mongoose.c index 5748f4fd..62f285f6 100644 --- a/mongoose.c +++ b/mongoose.c @@ -361,23 +361,24 @@ FILE *cs_log_file = NULL; double cs_log_ts; #endif +void cs_log_print_prefix(const char *func) { + if (cs_log_file == NULL) cs_log_file = stderr; + fprintf(cs_log_file, "%-20s ", func); +#ifdef CS_LOG_TS_DIFF + { + double now = cs_time(); + fprintf(cs_log_file, "%7u ", (unsigned int) ((now - cs_log_ts) * 1000000)); + cs_log_ts = now; + } +#endif +} + void cs_log_printf(const char *fmt, ...) { va_list ap; -#ifdef CS_LOG_TS_DIFF - double now = cs_time(); -#endif - - if (cs_log_file == NULL) cs_log_file = stderr; -#ifdef CS_LOG_TS_DIFF - fprintf(cs_log_file, "%7u ", (unsigned int) ((now - cs_log_ts) * 1000000)); -#endif va_start(ap, fmt); vfprintf(cs_log_file, fmt, ap); va_end(ap); fputc('\n', cs_log_file); -#ifdef CS_LOG_TS_DIFF - cs_log_ts = now; -#endif fflush(cs_log_file); } #endif /* !CS_DISABLE_STDIO */ diff --git a/mongoose.h b/mongoose.h index e5b39b5d..2a7feb16 100644 --- a/mongoose.h +++ b/mongoose.h @@ -646,19 +646,20 @@ void cs_log_set_level(enum cs_log_level level); void cs_log_set_file(FILE *file); extern enum cs_log_level cs_log_level; +void cs_log_print_prefix(const char *func); void cs_log_printf(const char *fmt, ...); -#define LOG(l, x) \ - if (cs_log_level >= l) { \ - cs_log_printf("%-20s ", __func__); \ - cs_log_printf x; \ +#define LOG(l, x) \ + if (cs_log_level >= l) { \ + cs_log_print_prefix(__func__); \ + cs_log_printf x; \ } #ifndef CS_NDEBUG #define DBG(x) \ if (cs_log_level >= LL_VERBOSE_DEBUG) { \ - cs_log_printf("%-20s ", __func__); \ + cs_log_print_prefix(__func__); \ cs_log_printf x; \ }