aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/vars.c
diff options
context:
space:
mode:
authordundargoc <33953936+dundargoc@users.noreply.github.com>2023-12-10 16:26:08 +0100
committerGitHub <noreply@github.com>2023-12-10 16:26:08 +0100
commit529498685bbcd4783bc0e816d6247118c9ffb9a7 (patch)
tree4a907cfe9e6d7cd49d0dd3d60a70550b6598b391 /src/nvim/eval/vars.c
parentc675e51c2f3f8bf46457a3f6653af06a2a946f69 (diff)
parenta34cc1a44de75eff4c6b43f983dc983eb283119d (diff)
downloadrneovim-529498685bbcd4783bc0e816d6247118c9ffb9a7.tar.gz
rneovim-529498685bbcd4783bc0e816d6247118c9ffb9a7.tar.bz2
rneovim-529498685bbcd4783bc0e816d6247118c9ffb9a7.zip
Merge pull request #26458 from famiu/refactor/options/optionindex
Diffstat (limited to 'src/nvim/eval/vars.c')
-rw-r--r--src/nvim/eval/vars.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/nvim/eval/vars.c b/src/nvim/eval/vars.c
index 8864edbf69..73c8ae1191 100644
--- a/src/nvim/eval/vars.c
+++ b/src/nvim/eval/vars.c
@@ -774,7 +774,7 @@ static char *ex_let_option(char *arg, typval_T *const tv, const bool is_const,
*p = NUL;
bool is_tty_opt = is_tty_option(arg);
- int opt_idx = is_tty_opt ? -1 : findoption(arg);
+ OptIndex opt_idx = is_tty_opt ? kOptInvalid : findoption(arg);
uint32_t opt_p_flags = get_option_flags(opt_idx);
bool hidden = is_option_hidden(opt_idx);
OptVal curval = is_tty_opt ? get_tty_option(arg) : get_option_value(opt_idx, scope);
@@ -834,7 +834,7 @@ static char *ex_let_option(char *arg, typval_T *const tv, const bool is_const,
}
}
- const char *err = set_option_value(arg, newval, scope);
+ const char *err = set_option_value_handle_tty(arg, opt_idx, newval, scope);
arg_end = p;
if (err != NULL) {
emsg(_(err));
@@ -1940,20 +1940,23 @@ typval_T optval_as_tv(OptVal value)
/// Set option "varname" to the value of "varp" for the current buffer/window.
static void set_option_from_tv(const char *varname, typval_T *varp)
{
- int opt_idx = findoption(varname);
- if (opt_idx < 0) {
+ OptIndex opt_idx = findoption(varname);
+ if (opt_idx == kOptInvalid) {
semsg(_(e_unknown_option2), varname);
return;
}
- uint32_t opt_p_flags = get_option(opt_idx)->flags;
bool error = false;
+ uint32_t opt_p_flags = get_option_flags(opt_idx);
OptVal value = tv_to_optval(varp, varname, opt_p_flags, &error);
if (!error) {
- set_option_value_give_err(varname, value, OPT_LOCAL);
- }
+ const char *errmsg = set_option_value_handle_tty(varname, opt_idx, value, OPT_LOCAL);
+ if (errmsg) {
+ emsg(errmsg);
+ }
+ }
optval_free(value);
}