diff options
author | nicm <nicm> | 2021-10-14 13:19:01 +0000 |
---|---|---|
committer | nicm <nicm> | 2021-10-14 13:19:01 +0000 |
commit | add20637f256c0118d3c687d5d1446612d14389a (patch) | |
tree | cf546997fdd9cb96e0ace7dd385eb127d67aa448 /options.c | |
parent | d0ab1a837a0ab3e26fe7195f14672f6feb43c4c4 (diff) | |
download | rtmux-add20637f256c0118d3c687d5d1446612d14389a.tar.gz rtmux-add20637f256c0118d3c687d5d1446612d14389a.tar.bz2 rtmux-add20637f256c0118d3c687d5d1446612d14389a.zip |
Add popup-border-lines option to set popup line style, from Alexis
Hildebrandt, GitHub issue 2930.
Diffstat (limited to 'options.c')
-rw-r--r-- | options.c | 33 |
1 files changed, 22 insertions, 11 deletions
@@ -989,28 +989,39 @@ options_from_string_flag(struct options *oo, const char *name, return (0); } +int +options_find_choice(const struct options_table_entry *oe, const char *value, + char **cause) +{ + const char **cp; + int n = 0, choice = -1; + + for (cp = oe->choices; *cp != NULL; cp++) { + if (strcmp(*cp, value) == 0) + choice = n; + n++; + } + if (choice == -1) { + xasprintf(cause, "unknown value: %s", value); + return (-1); + } + return (choice); +} + static int options_from_string_choice(const struct options_table_entry *oe, struct options *oo, const char *name, const char *value, char **cause) { - const char **cp; - int n, choice = -1; + int choice = -1; if (value == NULL) { choice = options_get_number(oo, name); if (choice < 2) choice = !choice; } else { - n = 0; - for (cp = oe->choices; *cp != NULL; cp++) { - if (strcmp(*cp, value) == 0) - choice = n; - n++; - } - if (choice == -1) { - xasprintf(cause, "unknown value: %s", value); + choice = options_find_choice(oe, value, cause); + if (choice < 0) return (-1); - } } options_set_number(oo, name, choice); return (0); |