aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/buffer.c
diff options
context:
space:
mode:
authorerw7 <erw7.github@gmail.com>2019-08-25 13:45:45 +0900
committererw7 <erw7.github@gmail.com>2019-09-04 13:40:04 +0900
commita2e48b556b7537acd26353b6cc201410be7cf3dc (patch)
tree8608753784910578b9772905f9545bf45c282361 /src/nvim/buffer.c
parent38806f23edfcba8cb7f7b80039d268ae3ffb0557 (diff)
downloadrneovim-a2e48b556b7537acd26353b6cc201410be7cf3dc.tar.gz
rneovim-a2e48b556b7537acd26353b6cc201410be7cf3dc.tar.bz2
rneovim-a2e48b556b7537acd26353b6cc201410be7cf3dc.zip
vim-patch:8.1.0362: cannot get the script line number when executing a function
Problem: Cannot get the script line number when executing a function. Solution: Store the line number besides the script ID. (Ozaki Kiichi, closes vim/vim#3362) Also display the line number with ":verbose set". https://github.com/vim/vim/commit/f29c1c6aa3f365c025890fab5fb9efbe88eb1761
Diffstat (limited to 'src/nvim/buffer.c')
-rw-r--r--src/nvim/buffer.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/nvim/buffer.c b/src/nvim/buffer.c
index 382b4c45c1..f15205349b 100644
--- a/src/nvim/buffer.c
+++ b/src/nvim/buffer.c
@@ -5066,7 +5066,6 @@ chk_modeline(
int retval = OK;
char_u *save_sourcing_name;
linenr_T save_sourcing_lnum;
- scid_T save_SID;
prev = -1;
for (s = ml_get(lnum); *s != NUL; s++) {
@@ -5154,15 +5153,16 @@ chk_modeline(
if (*s != NUL) { // skip over an empty "::"
const int secure_save = secure;
- save_SID = current_SID;
- current_SID = SID_MODELINE;
+ const sctx_T save_current_sctx = current_sctx;
+ current_sctx.sc_sid = SID_MODELINE;
+ current_sctx.sc_lnum = 0;
// Make sure no risky things are executed as a side effect.
secure = 1;
retval = do_set(s, OPT_MODELINE | OPT_LOCAL | flags);
secure = secure_save;
- current_SID = save_SID;
+ current_sctx = save_current_sctx;
if (retval == FAIL) { // stop if error found
break;
}