+ loop->action_queue = g_slist_append(loop->action_queue, action_copy(act));
+}
+
+static void ob_main_loop_client_destroy(ObClient *client, gpointer data)
+{
+ ObMainLoop *loop = data;
+ GSList *it;
+
+ for (it = loop->action_queue; it; it = g_slist_next(it)) {
+ ObAction *act = it->data;
+
+ if (act->data.any.c == client)
+ act->data.any.c = NULL;
+ }