diff options
author | Steven Schubiger <stsc@refcnt.org> | 2020-03-25 23:22:28 +0100 |
---|---|---|
committer | Steven Schubiger <stsc@refcnt.org> | 2020-03-25 23:22:28 +0100 |
commit | eace71293190208f443973a9e385ca69da504863 (patch) | |
tree | 4843109306cd7c50faacb71277a2efc759243b25 /colorize.c | |
parent | d7c84d2ae897eb414a8d0de03852bbb8a9204068 (diff) | |
download | colorize-eace71293190208f443973a9e385ca69da504863.tar.gz colorize-eace71293190208f443973a9e385ca69da504863.tar.bz2 |
assign_conf(): reduce code duplication
Diffstat (limited to 'colorize.c')
-rw-r--r-- | colorize.c | 25 |
1 files changed, 9 insertions, 16 deletions
@@ -745,29 +745,22 @@ parse_conf (const char *conf_file, struct conf *config) fclose (conf); } +#define ASSIGN_CONF(str,val) do { \ + free (str); \ + str = val; \ +} while (false) + static void assign_conf (const char *conf_file, struct conf *config, const char *cfg, char *val) { if (streq (cfg, "attr")) - { - free (config->attr); - config->attr = val; - } + ASSIGN_CONF (config->attr, val); else if (streq (cfg, "color")) - { - free (config->color); - config->color = val; - } + ASSIGN_CONF (config->color, val); else if (streq (cfg, "exclude-random")) - { - free (config->exclude_random); - config->exclude_random = val; - } + ASSIGN_CONF (config->exclude_random, val); else if (streq (cfg, "omit-color-empty")) - { - free (config->omit_color_empty); - config->omit_color_empty = val; - } + ASSIGN_CONF (config->omit_color_empty, val); else vfprintf_fail (formats[FMT_CONF], conf_file, cfg, "not recognized"); } |