diff options
Diffstat (limited to 'src/nvim/option.c')
-rw-r--r-- | src/nvim/option.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/nvim/option.c b/src/nvim/option.c index c7d2dcb602..ae75644794 100644 --- a/src/nvim/option.c +++ b/src/nvim/option.c @@ -200,7 +200,7 @@ typedef struct vimoption { // local option: indirect option index char_u *def_val[2]; // default values for variable (vi and vim) LastSet last_set; // script in which the option was last set -# define SCTX_INIT , { 0, 0 } +# define SCTX_INIT , { 0, 0, 0 } } vimoption_T; #define VI_DEFAULT 0 // def_val[VI_DEFAULT] is Vi default value @@ -2423,6 +2423,7 @@ set_string_option_direct( script_ctx = current_sctx; } else { script_ctx.sc_sid = set_sid; + script_ctx.sc_seq = 0; script_ctx.sc_lnum = 0; } set_option_sctx_idx(idx, opt_flags, script_ctx); @@ -3798,7 +3799,8 @@ static void set_option_sctx_idx(int opt_idx, int opt_flags, sctx_T script_ctx) int both = (opt_flags & (OPT_LOCAL | OPT_GLOBAL)) == 0; int indir = (int)options[opt_idx].indir; const LastSet last_set = { .script_ctx = - { script_ctx.sc_sid, script_ctx.sc_lnum + sourcing_lnum }, + { script_ctx.sc_sid, script_ctx.sc_seq, + script_ctx.sc_lnum + sourcing_lnum }, current_channel_id }; // Remember where the option was set. For local options need to do that |