This fixes broken shutdown on platforms without pselect(). A side effect of the "#ifdef HAVE_PSELECT" code path in signals_select() is that it calls signals_poll_mask() on each run. So it will pick up previously delivered signals. --- imap/idled.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/imap/idled.c b/imap/idled.c index b35c7c2..8850ce1 100644 --- a/imap/idled.c +++ b/imap/idled.c @@ -343,6 +343,8 @@ int main(int argc, char **argv) for (;;) { int n; + signals_poll(); + /* check for shutdown file */ if (shutdown_file(NULL, 0)) { /* signal all processes to shutdown */ -- 1.9.3