Skip to content

Commit

Permalink
patch 8.1.0414: v:option_old is cleared when using :set in OptionSet …
Browse files Browse the repository at this point in the history
…autocmd

Problem:    v:option_old and v:option_new are cleared when using :set in
            OptionSet autocmd. (Gary Johnson)
Solution:   Don't trigger OptionSet recursively.
  • Loading branch information
brammool committed Sep 21, 2018
1 parent 933bef7 commit 3f3fb0b
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
11 changes: 8 additions & 3 deletions src/option.c
Original file line number Diff line number Diff line change
Expand Up @@ -4359,7 +4359,9 @@ trigger_optionsset_string(
char_u *oldval,
char_u *newval)
{
if (oldval != NULL && newval != NULL)
// Don't do this recursively.
if (oldval != NULL && newval != NULL
&& *get_vim_var_str(VV_OPTION_TYPE) == NUL)
{
char_u buf_type[7];

Expand Down Expand Up @@ -8858,9 +8860,11 @@ set_bool_option(
options[opt_idx].flags |= P_WAS_SET;

#if defined(FEAT_EVAL)
if (!starting)
// Don't do this while starting up or recursively.
if (!starting && *get_vim_var_str(VV_OPTION_TYPE) == NUL)
{
char_u buf_old[2], buf_new[2], buf_type[7];

vim_snprintf((char *)buf_old, 2, "%d", old_value ? TRUE: FALSE);
vim_snprintf((char *)buf_new, 2, "%d", value ? TRUE: FALSE);
vim_snprintf((char *)buf_type, 7, "%s", (opt_flags & OPT_LOCAL) ? "local" : "global");
Expand Down Expand Up @@ -9415,7 +9419,8 @@ set_num_option(
options[opt_idx].flags |= P_WAS_SET;

#if defined(FEAT_EVAL)
if (!starting && errmsg == NULL)
// Don't do this while starting up, failure or recursively.
if (!starting && errmsg == NULL && *get_vim_var_str(VV_OPTION_TYPE) == NUL)
{
char_u buf_old[11], buf_new[11], buf_type[7];
vim_snprintf((char *)buf_old, 10, "%ld", old_value);
Expand Down
2 changes: 2 additions & 0 deletions src/version.c
Original file line number Diff line number Diff line change
Expand Up @@ -794,6 +794,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
/**/
414,
/**/
413,
/**/
Expand Down

0 comments on commit 3f3fb0b

Please sign in to comment.