summaryrefslogtreecommitdiff
path: root/signals.c
diff options
context:
space:
mode:
Diffstat (limited to 'signals.c')
-rw-r--r--signals.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/signals.c b/signals.c
index d738db4..055de2e 100644
--- a/signals.c
+++ b/signals.c
@@ -144,6 +144,8 @@ _rl_signal_handler (int sig)
#if defined (SIGWINCH)
if (sig == SIGWINCH)
{
+ RL_SETSTATE(RL_STATE_SIGHANDLER);
+
rl_resize_terminal ();
/* XXX - experimental for now */
/* Call a signal hook because though we called the original signal handler
@@ -151,6 +153,8 @@ _rl_signal_handler (int sig)
ourselves. */
if (rl_signal_event_hook)
(*rl_signal_event_hook) ();
+
+ RL_UNSETSTATE(RL_STATE_SIGHANDLER);
}
else
#endif
@@ -220,7 +224,7 @@ _rl_handle_signal (int sig)
sane without stopping on SIGTTOU if we have been placed into the
background. Even trying to get the current terminal pgrp with
tcgetpgrp() will generate SIGTTOU, so we don't bother. Don't bother
- doing this if we've been stopped on SIGTTOU; it's aready too late. */
+ doing this if we've been stopped on SIGTTOU; it's already too late. */
sigemptyset (&set);
sigaddset (&set, SIGTTOU);
sigprocmask (SIG_BLOCK, &set, (sigset_t *)NULL);