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 | 
