mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:9.0.1877: missing test for patch 9.0.1873
Problem: missing test for patch 9.0.1873
Solution: add a test trying to exchange windows
Add a test, making sure that switching windows is not allowed when
textlock is active, e.g. when running `:s/<pat>/\=func()/`
18d2709aa1
Co-authored-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
parent
b7734c4ec8
commit
bc09fc04b8
@ -3888,6 +3888,10 @@ static int do_sub(exarg_T *eap, const proftime_T timeout, const long cmdpreview_
|
||||
nmatch = curbuf->b_ml.ml_line_count - sub_firstlnum + 1;
|
||||
current_match.end.lnum = sub_firstlnum + (linenr_T)nmatch;
|
||||
skip_match = true;
|
||||
// safety check
|
||||
if (nmatch < 0) {
|
||||
goto skip;
|
||||
}
|
||||
}
|
||||
|
||||
// Save the line numbers for the preview buffer
|
||||
|
@ -1884,6 +1884,10 @@ static void win_exchange(int Prenum)
|
||||
beep_flush();
|
||||
return;
|
||||
}
|
||||
if (text_or_buf_locked()) {
|
||||
beep_flush();
|
||||
return;
|
||||
}
|
||||
|
||||
frame_T *frp;
|
||||
|
||||
|
@ -1425,4 +1425,18 @@ func Test_z_substitute_expr_leak()
|
||||
delfunc SubExpr
|
||||
endfunc
|
||||
|
||||
func Test_substitute_expr_switch_win()
|
||||
func R()
|
||||
wincmd x
|
||||
return 'XXXX'
|
||||
endfunc
|
||||
new Xfoobar
|
||||
let bufnr = bufnr('%')
|
||||
put ="abcdef"
|
||||
silent! s/\%')/\=R()
|
||||
call assert_fails(':%s/./\=R()/g', 'E565')
|
||||
delfunc R
|
||||
exe bufnr .. "bw!"
|
||||
endfunc
|
||||
|
||||
" vim: shiftwidth=2 sts=2 expandtab
|
||||
|
Loading…
Reference in New Issue
Block a user