mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-05-01 06:46:43 -04:00
config: wrap LOG_AND_NOTIFY_*() in do {} while (0)
This allows us to use these macros in if-statement without braces.
This commit is contained in:
parent
9b65531d6a
commit
593cad3680
1 changed files with 25 additions and 27 deletions
14
config.c
14
config.c
|
|
@ -98,32 +98,31 @@ static_assert(ALEN(search_binding_action_map) == BIND_ACTION_SEARCH_COUNT,
|
|||
"search binding action map size mismatch");
|
||||
|
||||
#define LOG_AND_NOTIFY_ERR(fmt, ...) \
|
||||
do { \
|
||||
LOG_ERR(fmt, ## __VA_ARGS__); \
|
||||
{ \
|
||||
char *text = xasprintf(fmt, ## __VA_ARGS__); \
|
||||
struct user_notification notif = { \
|
||||
.kind = USER_NOTIFICATION_ERROR, \
|
||||
.text = text, \
|
||||
}; \
|
||||
tll_push_back(conf->notifications, notif); \
|
||||
}
|
||||
} while (0)
|
||||
|
||||
#define LOG_AND_NOTIFY_WARN(fmt, ...) \
|
||||
do { \
|
||||
LOG_WARN(fmt, ## __VA_ARGS__); \
|
||||
{ \
|
||||
char *text = xasprintf(fmt, ## __VA_ARGS__); \
|
||||
struct user_notification notif = { \
|
||||
.kind = USER_NOTIFICATION_WARNING, \
|
||||
.text = text, \
|
||||
}; \
|
||||
tll_push_back(conf->notifications, notif); \
|
||||
}
|
||||
} while (0)
|
||||
|
||||
#define LOG_AND_NOTIFY_ERRNO(fmt, ...) \
|
||||
{ \
|
||||
do { \
|
||||
int _errno = errno; \
|
||||
LOG_ERRNO(fmt, ## __VA_ARGS__); \
|
||||
{ \
|
||||
int len = snprintf(NULL, 0, fmt, ## __VA_ARGS__); \
|
||||
int errno_len = snprintf(NULL, 0, ": %s", strerror(_errno)); \
|
||||
char *text = xmalloc(len + errno_len + 1); \
|
||||
|
|
@ -134,8 +133,7 @@ static_assert(ALEN(search_binding_action_map) == BIND_ACTION_SEARCH_COUNT,
|
|||
.text = text, \
|
||||
}; \
|
||||
tll_push_back(conf->notifications, notif); \
|
||||
} \
|
||||
}
|
||||
} while(0)
|
||||
|
||||
static char *
|
||||
get_shell(void)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue