From e045a7b80cc0cb96b79456f9c74c3705989a12df Mon Sep 17 00:00:00 2001 From: David Härdeman Date: Wed, 1 Jul 2020 17:28:09 +0200 Subject: Turn colors into global variables --- minecctl/misc.c | 23 ++++++++++++----------- minecctl/misc.h | 2 -- minecctl/rcon-commands.c | 5 +---- 3 files changed, 13 insertions(+), 17 deletions(-) (limited to 'minecctl') diff --git a/minecctl/misc.c b/minecctl/misc.c index 3f5ba50..c8e1d05 100644 --- a/minecctl/misc.c +++ b/minecctl/misc.c @@ -9,8 +9,6 @@ #include "misc.h" #include "minecctl.h" -bool use_colors = false; - /* FIXME: Can be shared */ void set_use_colors() { @@ -34,7 +32,7 @@ void set_use_colors() if (streq(e, "dumb")) return; - use_colors = true; + enable_colors(); } char **strv_copy(char *const *strv) @@ -210,20 +208,23 @@ void free_password(char **password) void __debug(_unused_ enum debug_lvl lvl, const char *fmt, ...) { va_list ap; + const char *color = NULL; - if (use_colors) { - if (lvl & DBG_ERROR) - fprintf(stderr, ANSI_RED); - else if (!(lvl & (DBG_INFO | DBG_VERBOSE))) - fprintf(stderr, ANSI_GREY); - } + + if (lvl & DBG_ERROR) + color = ansi_red; + else if (!(lvl & (DBG_INFO | DBG_VERBOSE))) + color = ansi_grey; + + if (color) + fprintf(stderr, "%s", color); va_start(ap, fmt); vfprintf(stderr, fmt, ap); va_end(ap); - if (use_colors && !(lvl & (DBG_INFO | DBG_VERBOSE))) - fprintf(stderr, ANSI_NORMAL); + if (color) + fprintf(stderr, "%s", ansi_normal); } _noreturn_ void __die(const char *fmt, ...) diff --git a/minecctl/misc.h b/minecctl/misc.h index c8254df..0c97ad4 100644 --- a/minecctl/misc.h +++ b/minecctl/misc.h @@ -1,8 +1,6 @@ #ifndef foomischfoo #define foomischfoo -extern bool use_colors; - void set_use_colors(); char **strv_copy(char *const *strv); diff --git a/minecctl/rcon-commands.c b/minecctl/rcon-commands.c index eff397d..fc5b932 100644 --- a/minecctl/rcon-commands.c +++ b/minecctl/rcon-commands.c @@ -166,10 +166,7 @@ static bool send_cmd(int sfd, const char *cmd) return false; } - if (use_colors) - info("%s%s%s", ANSI_GREY, reply, ANSI_NORMAL); - else - info("%s", reply); + info("%s%s%s", ansi_grey, reply, ansi_normal); return true; } -- cgit v1.2.3