tevent: check signal events first in event_loop_once
[sfrench/samba-autobuild/.git] / lib / tevent / tevent_standard.c
index 0ee99ca56b26bb0e4e2537b286cf65c1a9ecd5d0..40a08d7ab0812b707393bfa06ea64c8a3960a136 100644 (file)
@@ -524,6 +524,11 @@ static int std_event_loop_once(struct tevent_context *ev, const char *location)
                                                           struct std_event_context);
        struct timeval tval;
 
+       if (std_ev->ev->signal_events &&
+           tevent_common_check_signal(std_ev->ev)) {
+               return 0;
+       }
+
        tval = tevent_common_loop_timer_delay(ev);
        if (tevent_timeval_is_zero(&tval)) {
                return 0;