summaryrefslogtreecommitdiffstats
path: root/src/evalwindow.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-12-20 21:35:59 +0000
committerBram Moolenaar <Bram@vim.org>2021-12-20 21:35:59 +0000
commitdab17a0689a2f31f69f428975f84b0c3c7ba3030 (patch)
tree6ab3b3865878fc6de89d4f2654d71b00c5fed833 /src/evalwindow.c
parent39713d3acbfb6673775158a0171c7389c07f25df (diff)
patch 8.2.3862: crash on exit with EXITFREE and using win_execute()v8.2.3862
Problem: Crash on exit with EXITFREE and using win_execute(). Solution: Also save and restore tp_topframe. (issue #9374)
Diffstat (limited to 'src/evalwindow.c')
-rw-r--r--src/evalwindow.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/evalwindow.c b/src/evalwindow.c
index c8c1442d27..794d6aa0bb 100644
--- a/src/evalwindow.c
+++ b/src/evalwindow.c
@@ -1250,9 +1250,11 @@ switch_win_noblock(
{
curtab->tp_firstwin = firstwin;
curtab->tp_lastwin = lastwin;
+ curtab->tp_topframe = topframe;
curtab = tp;
firstwin = curtab->tp_firstwin;
lastwin = curtab->tp_lastwin;
+ topframe = curtab->tp_topframe;
}
else
goto_tabpage_tp(tp, FALSE, FALSE);
@@ -1294,9 +1296,11 @@ restore_win_noblock(
{
curtab->tp_firstwin = firstwin;
curtab->tp_lastwin = lastwin;
+ curtab->tp_topframe = topframe;
curtab = save_curtab;
firstwin = curtab->tp_firstwin;
lastwin = curtab->tp_lastwin;
+ topframe = curtab->tp_topframe;
}
else
goto_tabpage_tp(save_curtab, FALSE, FALSE);