From 6c293b5d0dbd46ebef79f91002a0684b69c3b646 Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Tue, 26 Jan 2016 10:22:51 +0100 Subject: [PATCH] make LEPRINT* macros safe to use with if/else pairs --- src/pvefw-logger.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/pvefw-logger.c b/src/pvefw-logger.c index b7a2fb2..19beb18 100644 --- a/src/pvefw-logger.c +++ b/src/pvefw-logger.c @@ -175,8 +175,17 @@ queue_log_entry(struct log_entry *le) } -#define LEPRINTF(format, ...) { if (le->len < LE_MAX) le->len += snprintf(le->buf + le->len, LE_MAX - le->len, format, ##__VA_ARGS__); } -#define LEPRINTTIME(sec) { time_t tmp_sec = sec; if (le->len < (LE_MAX - 30)) le->len += strftime(le->buf + le->len, LE_MAX - le->len, "%d/%b/%Y:%H:%M:%S %z ", localtime(&tmp_sec)); } +#define LEPRINTF(format, ...) \ + do { \ + if (le->len < LE_MAX) \ + le->len += snprintf(le->buf + le->len, LE_MAX - le->len, format, ##__VA_ARGS__); \ + } while (0) +#define LEPRINTTIME(sec) \ + do { \ + time_t tmp_sec = sec; \ + if (le->len < (LE_MAX - 30)) \ + le->len += strftime(le->buf + le->len, LE_MAX - le->len, "%d/%b/%Y:%H:%M:%S %z ", localtime(&tmp_sec)); \ + } while (0) static void log_status_message(guint loglevel, const char *fmt, ...) -- 2.39.2