ObMainLoopXHandlerType *h = it->data;
h->func(&e, h->data);
}
- } while (XPending(loop->display));
+ } while (XPending(loop->display) && loop->run);
} else if (loop->action_queue) {
/* only fire off one action at a time, then go back for more
X events, since the action might cause some X events (like
action_unref(act);
act = NULL;
}
- } while (!act && loop->action_queue);
+ } while (!act && loop->action_queue && loop->run);
if (act) {
event_curtime = act->data.any.time;