mirror of
https://github.com/vim/vim.git
synced 2025-07-26 11:04:33 -04:00
patch 9.1.0087: Restoring lastused_tabpage too early in do_arg_all()
Problem: Restore lastused_tabpage too early in do_arg_all() function it will change later in the function. Solution: Restore lastused_tabpage a bit later, when being done with tabpages (glepnir) closes: #13992 Signed-off-by: glepnir <glephunter@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
parent
725c7c31a4
commit
2975a54f28
@ -1253,10 +1253,6 @@ do_arg_all(
|
|||||||
// When the ":tab" modifier was used do this for all tab pages.
|
// When the ":tab" modifier was used do this for all tab pages.
|
||||||
arg_all_close_unused_windows(&aall);
|
arg_all_close_unused_windows(&aall);
|
||||||
|
|
||||||
// Now set the last used tabpage to where we started.
|
|
||||||
if (valid_tabpage(new_lu_tp))
|
|
||||||
lastused_tabpage = new_lu_tp;
|
|
||||||
|
|
||||||
// Open a window for files in the argument list that don't have one.
|
// Open a window for files in the argument list that don't have one.
|
||||||
// ARGCOUNT may change while doing this, because of autocommands.
|
// ARGCOUNT may change while doing this, because of autocommands.
|
||||||
if (count > aall.opened_len || count <= 0)
|
if (count > aall.opened_len || count <= 0)
|
||||||
@ -1291,6 +1287,11 @@ do_arg_all(
|
|||||||
// to window with first arg
|
// to window with first arg
|
||||||
if (valid_tabpage(aall.new_curtab))
|
if (valid_tabpage(aall.new_curtab))
|
||||||
goto_tabpage_tp(aall.new_curtab, TRUE, TRUE);
|
goto_tabpage_tp(aall.new_curtab, TRUE, TRUE);
|
||||||
|
|
||||||
|
// Now set the last used tabpage to where we started.
|
||||||
|
if (valid_tabpage(new_lu_tp))
|
||||||
|
lastused_tabpage = new_lu_tp;
|
||||||
|
|
||||||
if (win_valid(aall.new_curwin))
|
if (win_valid(aall.new_curwin))
|
||||||
win_enter(aall.new_curwin, FALSE);
|
win_enter(aall.new_curwin, FALSE);
|
||||||
|
|
||||||
|
@ -156,10 +156,13 @@ func Test_tabpage_drop()
|
|||||||
tab split f3
|
tab split f3
|
||||||
normal! gt
|
normal! gt
|
||||||
call assert_equal(1, tabpagenr())
|
call assert_equal(1, tabpagenr())
|
||||||
|
tab drop f4
|
||||||
|
call assert_equal(1, tabpagenr('#'))
|
||||||
|
|
||||||
tab drop f3
|
tab drop f3
|
||||||
call assert_equal(3, tabpagenr())
|
call assert_equal(4, tabpagenr())
|
||||||
call assert_equal(1, tabpagenr('#'))
|
call assert_equal(2, tabpagenr('#'))
|
||||||
|
bwipe!
|
||||||
bwipe!
|
bwipe!
|
||||||
bwipe!
|
bwipe!
|
||||||
bwipe!
|
bwipe!
|
||||||
|
@ -704,6 +704,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 */
|
||||||
|
/**/
|
||||||
|
87,
|
||||||
/**/
|
/**/
|
||||||
86,
|
86,
|
||||||
/**/
|
/**/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user