From 3f3125ee103401cf561b38b00f9b34187b8d6a52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Sat, 11 Apr 2015 10:31:28 +0200 Subject: Eliminate global state for :set options --- vis.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'vis.c') diff --git a/vis.c b/vis.c index d8ede5d..e4c618a 100644 --- a/vis.c +++ b/vis.c @@ -1392,15 +1392,13 @@ static bool cmd_set(Filerange *range, enum CmdOpt cmdopt, const char *argv[]) { [OPTION_NUMBER_RELATIVE] = { { "relativenumbers", "rnu" }, OPTION_TYPE_BOOL }, }; - static Map *optmap = NULL; - - if (!optmap) { - if (!(optmap = map_new())) + if (!vis->options) { + if (!(vis->options = map_new())) return false; for (int i = 0; i < LENGTH(options); i++) { options[i].index = i; for (const char **name = options[i].names; *name; name++) { - if (!map_put(optmap, *name, &options[i])) + if (!map_put(vis->options, *name, &options[i])) return false; } } @@ -1416,7 +1414,7 @@ static bool cmd_set(Filerange *range, enum CmdOpt cmdopt, const char *argv[]) { OptionDef *opt = NULL; if (!strncasecmp(argv[1], "no", 2)) { - opt = map_closest(optmap, argv[1]+2); + opt = map_closest(vis->options, argv[1]+2); if (opt && opt->type == OPTION_TYPE_BOOL) invert = true; else @@ -1424,7 +1422,7 @@ static bool cmd_set(Filerange *range, enum CmdOpt cmdopt, const char *argv[]) { } if (!opt) - opt = map_closest(optmap, argv[1]); + opt = map_closest(vis->options, argv[1]); if (!opt) { editor_info_show(vis, "Unknown option: `%s'", argv[1]); return false; -- cgit v1.2.3