X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fmainloop.c;h=397f8ae21a4aced2ad6b1949abb9b9bcc59f08fa;hb=cb3aaab102035e227c6d64c7b5c319ed3b13cef2;hp=888c58fac48e25822d05816548959c7ca741eee8;hpb=8de54d2b455ef3ec50bf2d00adeb65727e4fa158;p=chaz%2Fopenbox diff --git a/openbox/mainloop.c b/openbox/mainloop.c index 888c58fa..397f8ae2 100644 --- a/openbox/mainloop.c +++ b/openbox/mainloop.c @@ -340,7 +340,7 @@ static void sighandler(gint sig) /* XXX special case for signals that default to core dump. but throw some helpful output here... */ - fprintf(stderr, "Fuck ya. Core dump. (Signal=%d)\n", sig); + fprintf(stderr, "Fuck yah. Core dump. (Signal=%d)\n", sig); /* die with a core dump */ abort(); @@ -525,10 +525,21 @@ void ob_main_loop_timeout_remove(ObMainLoop *loop, for (it = loop->timers; it; it = g_slist_next(it)) { ObMainLoopTimer *t = it->data; - if (t->func == handler) { + if (t->func == handler) + t->del_me = TRUE; + } +} + +void ob_main_loop_timeout_remove_data(ObMainLoop *loop, + GSourceFunc handler, + gpointer data) +{ + GSList *it; + + for (it = loop->timers; it; it = g_slist_next(it)) { + ObMainLoopTimer *t = it->data; + if (t->func == handler && t->data == data) t->del_me = TRUE; - break; - } } }