Ignore signals during command execution
Disable signal handlers in wins_prepare_external() and reactivate them in wins_unprepare_external(). Before, it was possible that resizing the window during editor/pager mode resulted in the calcurse main screen appearing on top. Addresses BUG#9. Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
This commit is contained in:
14
src/sigs.c
14
src/sigs.c
@@ -108,3 +108,17 @@ void sigs_init()
|
||||
|| !sigs_set_hdlr(SIGINT, SIG_IGN))
|
||||
exit_calcurse(1);
|
||||
}
|
||||
|
||||
/* Ignore SIGWINCH and SIGTERM signals. */
|
||||
void sigs_ignore(void)
|
||||
{
|
||||
sigs_set_hdlr(SIGWINCH, SIG_IGN);
|
||||
sigs_set_hdlr(SIGTERM, SIG_IGN);
|
||||
}
|
||||
|
||||
/* No longer ignore SIGWINCH and SIGTERM signals. */
|
||||
void sigs_unignore(void)
|
||||
{
|
||||
sigs_set_hdlr(SIGWINCH, generic_hdlr);
|
||||
sigs_set_hdlr(SIGTERM, generic_hdlr);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user