mirror of
https://github.com/vim/vim.git
synced 2025-09-24 03:44:06 -04:00
patch 8.2.1783: try-catch test fails
Problem: Try-catch test fails. Solution: Don't call win_enter(), only call enterering_window().
This commit is contained in:
@@ -1533,18 +1533,22 @@ win_found:
|
|||||||
unblock_autocmds();
|
unblock_autocmds();
|
||||||
|
|
||||||
if (win_valid(aco->save_curwin))
|
if (win_valid(aco->save_curwin))
|
||||||
win_enter(aco->save_curwin, TRUE);
|
curwin = aco->save_curwin;
|
||||||
else
|
else
|
||||||
// Hmm, original window disappeared. Just use the first one.
|
// Hmm, original window disappeared. Just use the first one.
|
||||||
curwin = firstwin;
|
curwin = firstwin;
|
||||||
|
curbuf = curwin->w_buffer;
|
||||||
|
#ifdef FEAT_JOB_CHANNEL
|
||||||
|
// May need to restore insert mode for a prompt buffer.
|
||||||
|
entering_window(curwin);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (win_valid(aco->save_prevwin))
|
if (win_valid(aco->save_prevwin))
|
||||||
prevwin = aco->save_prevwin;
|
prevwin = aco->save_prevwin;
|
||||||
#ifdef FEAT_EVAL
|
#ifdef FEAT_EVAL
|
||||||
vars_clear(&aucmd_win->w_vars->dv_hashtab); // free all w: variables
|
vars_clear(&aucmd_win->w_vars->dv_hashtab); // free all w: variables
|
||||||
hash_init(&aucmd_win->w_vars->dv_hashtab); // re-use the hashtab
|
hash_init(&aucmd_win->w_vars->dv_hashtab); // re-use the hashtab
|
||||||
#endif
|
#endif
|
||||||
curbuf = curwin->w_buffer;
|
|
||||||
|
|
||||||
vim_free(globaldir);
|
vim_free(globaldir);
|
||||||
globaldir = aco->globaldir;
|
globaldir = aco->globaldir;
|
||||||
|
|
||||||
|
@@ -10,6 +10,7 @@ int win_count(void);
|
|||||||
int make_windows(int count, int vertical);
|
int make_windows(int count, int vertical);
|
||||||
void win_move_after(win_T *win1, win_T *win2);
|
void win_move_after(win_T *win1, win_T *win2);
|
||||||
void win_equal(win_T *next_curwin, int current, int dir);
|
void win_equal(win_T *next_curwin, int current, int dir);
|
||||||
|
void entering_window(win_T *win);
|
||||||
void close_windows(buf_T *buf, int keep_curwin);
|
void close_windows(buf_T *buf, int keep_curwin);
|
||||||
int one_window(void);
|
int one_window(void);
|
||||||
int win_close(win_T *win, int free_buf);
|
int win_close(win_T *win, int free_buf);
|
||||||
|
@@ -227,7 +227,12 @@ func RunTheTest(test)
|
|||||||
|
|
||||||
" Close any extra tab pages and windows and make the current one not modified.
|
" Close any extra tab pages and windows and make the current one not modified.
|
||||||
while tabpagenr('$') > 1
|
while tabpagenr('$') > 1
|
||||||
|
let winid = win_getid()
|
||||||
quit!
|
quit!
|
||||||
|
if winid == win_getid()
|
||||||
|
echoerr 'Could not quit window'
|
||||||
|
break
|
||||||
|
endif
|
||||||
endwhile
|
endwhile
|
||||||
|
|
||||||
while 1
|
while 1
|
||||||
|
@@ -750,6 +750,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1783,
|
||||||
/**/
|
/**/
|
||||||
1782,
|
1782,
|
||||||
/**/
|
/**/
|
||||||
|
@@ -2227,7 +2227,7 @@ leaving_window(win_T *win)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
entering_window(win_T *win)
|
entering_window(win_T *win)
|
||||||
{
|
{
|
||||||
// Only matters for a prompt window.
|
// Only matters for a prompt window.
|
||||||
|
Reference in New Issue
Block a user