]> Dogcows Code - chaz/openbox/blobdiff - openbox/ping.c
don't let repeating timers, with a very fast timer in the queue, cause the main loop...
[chaz/openbox] / openbox / ping.c
index 687dd7f48461baef99b04012d5959bf7494038dd..d159805dbe0fd4084f09c39bc2454ea58cf1d651 100644 (file)
@@ -35,7 +35,7 @@ typedef struct _ObPingTarget
 static GSList *ping_targets = NULL;
 static gboolean active = FALSE;
 
-#define PING_TIMEOUT (G_USEC_PER_SEC * 1)
+#define PING_TIMEOUT (G_USEC_PER_SEC * 3)
 /*! Warn the user after this many PING_TIMEOUT intervals */
 #define PING_TIMEOUT_WARN 3
 
@@ -64,7 +64,7 @@ void ping_start(struct _ObClient *client, ObPingEventHandler h)
     ping_send(t);
     ping_targets = g_slist_prepend(ping_targets, t);
     ob_main_loop_timeout_add(ob_main_loop, PING_TIMEOUT, ping_timeout,
-                             t, NULL, NULL);
+                             t, g_direct_equal, NULL);
 
     if (!active) {
         active = TRUE;
@@ -87,7 +87,8 @@ void ping_got_pong(Time timestamp)
     for (it = ping_targets; it != NULL; it = g_slist_next(it)) {
         t = it->data;
         if (t->sent == timestamp) {
-            ob_debug("Got PONG with timestamp %lu\n", timestamp);
+            /*ob_debug("PONG: '%s' (timestamp %lu)\n", t->client->title,
+                     t->sent);*/
             if (t->waiting > PING_TIMEOUT_WARN) {
                 /* we had notified that they weren't responding, so now we
                    need to notify that they are again */
@@ -106,7 +107,8 @@ void ping_got_pong(Time timestamp)
 static void ping_send(ObPingTarget *t)
 {
     t->sent = event_get_server_time();
-    ob_debug("PINGing client 0x%x at %lu\n", t->client->window, t->sent);
+    /*ob_debug("PING: '%s' (timestamp %lu)\n", t->client->title, t->sent);*/
+    ob_debug("PINGing client %s at %lu\n", t->client->title, t->sent);
     PROP_MSG_TO(t->client->window, t->client->window, wm_protocols,
                 prop_atoms.net_wm_ping, t->sent, t->client->window, 0, 0,
                 NoEventMask);
This page took 0.024049 seconds and 4 git commands to generate.