forked from aniani/vim
patch 8.2.2231: when "--remote file" is used "file" is not reloaded
Problem: When "--remote file" is used "file" is not reloaded. Solution: When a :drop command is used for a file that is already displayed in a window and it has not been changed, check if it needs to be reloaded. (closes #7560)
This commit is contained in:
parent
179eb567b1
commit
e4862a0fe6
@ -5171,6 +5171,15 @@ ex_drop(exarg_T *eap)
|
||||
{
|
||||
goto_tabpage_win(tp, wp);
|
||||
curwin->w_arg_idx = 0;
|
||||
if (!bufIsChanged(curbuf))
|
||||
{
|
||||
int save_ar = curbuf->b_p_ar;
|
||||
|
||||
// reload the file if it is newer
|
||||
curbuf->b_p_ar = TRUE;
|
||||
buf_check_timestamp(curbuf, FALSE);
|
||||
curbuf->b_p_ar = save_ar;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -73,6 +73,15 @@ func Test_client_server()
|
||||
|
||||
call assert_fails('call remote_send("XXX", ":let testvar = ''yes''\<CR>")', 'E241:')
|
||||
|
||||
call writefile(['one'], 'Xclientfile')
|
||||
let cmd = GetVimProg() .. ' --servername ' .. name .. ' --remote Xclientfile'
|
||||
call system(cmd)
|
||||
call WaitForAssert({-> assert_equal('Xclientfile', remote_expr(name, "bufname()", "", 2))})
|
||||
call WaitForAssert({-> assert_equal('one', remote_expr(name, "getline(1)", "", 2))})
|
||||
call writefile(['one', 'two'], 'Xclientfile')
|
||||
call system(cmd)
|
||||
call WaitForAssert({-> assert_equal('two', remote_expr(name, "getline(2)", "", 2))})
|
||||
|
||||
" Expression evaluated locally.
|
||||
if v:servername == ''
|
||||
eval 'MYSELF'->remote_startserver()
|
||||
|
@ -750,6 +750,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
2231,
|
||||
/**/
|
||||
2230,
|
||||
/**/
|
||||
|
Loading…
x
Reference in New Issue
Block a user