Mercurial > vim
annotate pixmaps/tb_redo.xpm @ 34506:56ba5ea924a7 v9.1.0159
patch 9.1.0159: Crash in WinClosed after BufUnload closes other windows
Commit: https://github.com/vim/vim/commit/b2ec0da080fb24f12a8d6f54bd7318a078ca4e6c
Author: zeertzjq <zeertzjq@outlook.com>
Date: Sat Mar 9 15:39:27 2024 +0100
patch 9.1.0159: Crash in WinClosed after BufUnload closes other windows
Problem: Crash in WinClosed after BufUnload closes other windows
Solution: Don't trigger WinClosed if the buffer is NULL (zeertzjq)
Now win_close_othertab() doesn't trigger any autocommands if the buffer
is NULL, so remove the autocmd blocking above (which was added not long
ago in patch v9.0.0550) for consistency.
Also remove an unreachable close_last_window_tabpage() above:
- It is only reached if only_one_window() returns TRUE and last_window()
returns FALSE.
- If only_one_window() returns TRUE, there is only one tabpage.
- If there is only one tabpage and last_window() returns FALSE, the
one_window() in last_window() must return FALSE, and the ONE_WINDOW
in close_last_window_tabpage() must also be FALSE.
- So close_last_window_tabpage() doesn't do anything and returns FALSE.
Then the curtab != prev_curtab check also doesn't make much sense, and
the only_one_window() can be replaced with a check for popup and a call
to last_window() since this is a stricter check than only_one_window().
closes: #14166
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 09 Mar 2024 15:45:06 +0100 |
parents | 3fc0f57ecb91 |
children |
rev | line source |
---|---|
7 | 1 /* XPM */ |
2 static char * tb_redo_xpm[] = { | |
3 /* width height ncolors cpp [x_hot y_hot] */ | |
4 "18 18 4 1 0 0", | |
5 /* colors */ | |
6 " s none m none c none", | |
7 ". s iconColor1 m black c #000000", | |
8 "X s iconColor2 m none c #FFFFFF", | |
9 "o s bottomShadowColor m black c #5D6069", | |
10 /* pixels */ | |
11 " ", | |
12 " ", | |
13 " ..... .. ", | |
14 " ..XXXXX..X.o ", | |
15 " .XXXXXXXXXX.o ", | |
16 " .XX....XXXX.o ", | |
17 " .XX.ooo.XXXX.o ", | |
18 " .XX.o .XXXXX.o ", | |
19 " .XX.o .......o ", | |
20 " .XX.o ooo.ooo ", | |
21 " .XX.o .X. ", | |
22 " .XX.....XX.o ", | |
23 " .XXXXXXXX.oo ", | |
24 " ..XXXXX.oo ", | |
25 " .....oo ", | |
26 " ooooo ", | |
27 " ", | |
28 " "}; |