aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/funcs.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-02-23 06:35:40 +0800
committerzeertzjq <zeertzjq@outlook.com>2024-02-23 06:39:05 +0800
commit06df895e71720b65f98b6b9c579ca5918a12bc04 (patch)
tree778d31bc4664128a2f21cf7925e918f5dd064a4f /src/nvim/eval/funcs.c
parent20e4001eeedc80b1f2857fcaca81f7a211a09b40 (diff)
downloadrneovim-06df895e71720b65f98b6b9c579ca5918a12bc04.tar.gz
rneovim-06df895e71720b65f98b6b9c579ca5918a12bc04.tar.bz2
rneovim-06df895e71720b65f98b6b9c579ca5918a12bc04.zip
vim-patch:9.1.0126: Internal error when using upper-case mark in getregion()
Problem: Internal error when passing mark in another buffer to getregion(). Solution: Don't allow marks in another buffer (zeertzjq) closes: vim/vim#14076 Internal error when passing mark in another buffer to getregion() https://github.com/vim/vim/commit/421b597470c118871c7081de00dd065e0e000b7e
Diffstat (limited to 'src/nvim/eval/funcs.c')
-rw-r--r--src/nvim/eval/funcs.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/eval/funcs.c b/src/nvim/eval/funcs.c
index b62ed557e4..b679b64bf6 100644
--- a/src/nvim/eval/funcs.c
+++ b/src/nvim/eval/funcs.c
@@ -2831,13 +2831,13 @@ static void f_getregion(typval_T *argvars, typval_T *rettv, EvalFuncData fptr)
int fnum = -1;
// NOTE: var2fpos() returns static pointer.
pos_T *fp = var2fpos(&argvars[0], true, &fnum, false);
- if (fp == NULL) {
+ if (fp == NULL || (fnum >= 0 && fnum != curbuf->b_fnum)) {
return;
}
pos_T p1 = *fp;
fp = var2fpos(&argvars[1], true, &fnum, false);
- if (fp == NULL) {
+ if (fp == NULL || (fnum >= 0 && fnum != curbuf->b_fnum)) {
return;
}
pos_T p2 = *fp;