]> git.meshlink.io Git - catta/blobdiff - avahi-core/browse.c
* started writing avahi-discover in python
[catta] / avahi-core / browse.c
index 10d71cbc514f9a9ba66c825989ec1ebedeae5a5d..2d14c90477899fc899be37c2fc5604b2b415932d 100644 (file)
@@ -25,6 +25,7 @@
 
 #include "browse.h"
 #include "util.h"
+#include "log.h"
 
 struct AvahiRecordBrowser {
     gboolean dead;
@@ -33,7 +34,6 @@ struct AvahiRecordBrowser {
     AvahiKey *key;
     gint interface;
     guchar protocol;
-    gint n_query;
     guint sec_delay;
 
     AvahiTimeEvent *time_event;
@@ -49,17 +49,19 @@ struct AvahiRecordBrowser {
 static void elapse(AvahiTimeEvent *e, void *userdata) {
     AvahiRecordBrowser *s = userdata;
     GTimeVal tv;
-/*     gchar *t; */
+/*     gchar *t;  */
     
     g_assert(s);
 
     avahi_server_post_query(s->server, s->interface, s->protocol, s->key);
 
-    if (s->n_query++ <= 8)
-        s->sec_delay *= 2;
-
-/*     avahi_log_debug("%i. Continuous querying for %s", s->n_query, t = avahi_key_to_string(s->key)); */
-/*     g_free(t); */
+    s->sec_delay *= 2;
+    
+    if (s->sec_delay >= 60*60)  /* 1h */
+        s->sec_delay = 60*60;
+    
+/*     avahi_log_debug("Continuous querying for %s (%i)", t = avahi_key_to_string(s->key), s->sec_delay);  */
+/*     g_free(t);  */
     
     avahi_elapse_time(&tv, s->sec_delay*1000, 0);
     avahi_time_event_queue_update(s->server->time_event_queue, s->time_event, &tv);
@@ -132,7 +134,6 @@ AvahiRecordBrowser *avahi_record_browser_new(AvahiServer *server, gint interface
     b->protocol = protocol;
     b->callback = callback;
     b->userdata = userdata;
-    b->n_query = 1;
     b->sec_delay = 1;
 
     avahi_server_post_query(b->server, b->interface, b->protocol, b->key);