mirror of
https://github.com/neovim/neovim.git
synced 2025-09-29 14:38:32 +00:00
refactor(option.c): call did_set_option for all types
set_option_value() only called did_set_option() for string options, whereas do_set_option_value() called it for all types. This change makes set_option_value() call did_set_option() for all types and thus makes it more consistent with do_set_option_value().
This commit is contained in:
@@ -1598,7 +1598,7 @@ int do_set(char *arg, int opt_flags)
|
||||
/// @param opt_flags possibly with OPT_MODELINE
|
||||
/// @param new_value value was replaced completely
|
||||
/// @param value_checked value was checked to be safe, no need to set P_INSECURE
|
||||
void did_set_option(int opt_idx, int opt_flags, int new_value, int value_checked)
|
||||
void did_set_option(int opt_idx, int opt_flags, bool new_value, bool value_checked)
|
||||
{
|
||||
options[opt_idx].flags |= P_WAS_SET;
|
||||
|
||||
@@ -3793,6 +3793,8 @@ const char *set_option_value(const char *const name, const OptVal value, int opt
|
||||
goto end;
|
||||
}
|
||||
|
||||
int value_checked = false;
|
||||
|
||||
switch (v.type) {
|
||||
case kOptValTypeNil:
|
||||
abort(); // This will never happen.
|
||||
@@ -3825,11 +3827,15 @@ const char *set_option_value(const char *const name, const OptVal value, int opt
|
||||
if (s == NULL || opt_flags & OPT_CLEAR) {
|
||||
s = "";
|
||||
}
|
||||
errmsg = set_string_option(opt_idx, s, opt_flags, errbuf, sizeof(errbuf));
|
||||
errmsg = set_string_option(opt_idx, s, opt_flags, &value_checked, errbuf, sizeof(errbuf));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (errmsg != NULL) {
|
||||
did_set_option(opt_idx, opt_flags, true, value_checked);
|
||||
}
|
||||
|
||||
end:
|
||||
optval_free(v); // Free the copied OptVal.
|
||||
return errmsg;
|
||||
|
Reference in New Issue
Block a user