Mercurial > vim
changeset 27346:71d606960955 v8.2.4201
patch 8.2.4201: when using the GUI CTRL-Z does not stop gvim
Commit: https://github.com/vim/vim/commit/8e4af851fd3eff4b22fca962e5be783742e8f1bb
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Jan 24 12:20:45 2022 +0000
patch 8.2.4201: when using the GUI CTRL-Z does not stop gvim
Problem: When using the GUI CTRL-Z does not stop gvim.
Solution: When using the GUI set SIGTSTP to SIG_DFL. (Andrew Maltsev,
closes #9570)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 24 Jan 2022 13:30:04 +0100 |
parents | 1f28cf4cd809 |
children | b43f497a7e4b |
files | src/os_unix.c src/version.c |
diffstat | 2 files changed, 10 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/os_unix.c +++ b/src/os_unix.c @@ -1378,7 +1378,14 @@ set_signals(void) #ifdef SIGTSTP // See mch_init() for the conditions under which we ignore SIGTSTP. - signal(SIGTSTP, ignore_sigtstp ? SIG_IGN : (RETSIGTYPE (*)())sig_tstp); + // In the GUI default TSTP processing is OK. + // Checking both gui.in_use and gui.starting because gui.in_use is not set + // at this point (set after menus are displayed), but gui.starting is set. + signal(SIGTSTP, ignore_sigtstp ? SIG_IGN +# ifdef FEAT_GUI + : gui.in_use || gui.starting ? SIG_DFL +# endif + : (RETSIGTYPE (*)())sig_tstp); #endif #if defined(SIGCONT) signal(SIGCONT, sigcont_handler);