diff options
Diffstat (limited to 'common-session.c')
-rw-r--r-- | common-session.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/common-session.c b/common-session.c index 79166f4..601136f 100644 --- a/common-session.c +++ b/common-session.c @@ -144,6 +144,11 @@ void session_loop(void(*loophandler)()) { if (val < 0) { if (errno == EINTR) { + /* This must happen even if we've been interrupted, so that + * changed signal-handler vars can take effect etc */ + if (loophandler) { + loophandler(); + } continue; } else { dropbear_exit("Error in select"); |