]> Dogcows Code - chaz/openbox/commitdiff
stop processing x events or actions when loop->run becomes false
authorDana Jansens <danakj@orodu.net>
Thu, 7 Jun 2007 22:38:44 +0000 (22:38 +0000)
committerDana Jansens <danakj@orodu.net>
Thu, 7 Jun 2007 22:38:44 +0000 (22:38 +0000)
openbox/mainloop.c

index 0e7b0b3cf81efca140bc7405533f3a79a2778ab8..36bba6278c8183c6e06e7f50d1b9016e4e9b2003 100644 (file)
@@ -314,7 +314,7 @@ void ob_main_loop_run(ObMainLoop *loop)
                     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
@@ -331,7 +331,7 @@ void ob_main_loop_run(ObMainLoop *loop)
                     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;
This page took 0.02222 seconds and 4 git commands to generate.