]> git.meshlink.io Git - catta/blobdiff - avahi-glib/glib-watch-test.c
* avahi-utils: replace python avahi-browse with a version written in C.
[catta] / avahi-glib / glib-watch-test.c
index bd111dd77aa16f21506e8ef947f6df333461f94e..733c81f88c107fa24533ef92bdcd82fb23866535 100644 (file)
 
 #include <avahi-common/watch.h>
 #include <avahi-common/timeval.h>
+#include <avahi-common/gccmacro.h>
+
 #include "glib-watch.h"
 
-static AvahiPoll *api = NULL;
+static const AvahiPoll *api = NULL;
 static GMainLoop *loop = NULL;
 
-static void callback(AvahiWatch *w, int fd, AvahiWatchEvent event, void *userdata) {
+static void callback(AvahiWatch *w, int fd, AvahiWatchEvent event, AVAHI_GCC_UNUSED void *userdata) {
 
     if (event & AVAHI_WATCH_IN) {
         ssize_t r;
@@ -52,7 +54,7 @@ static void callback(AvahiWatch *w, int fd, AvahiWatchEvent event, void *userdat
     }
 }
 
-static void wakeup(AvahiPoll *_api, void *userdata) {
+static void wakeup(AvahiTimeout *t, AVAHI_GCC_UNUSED void *userdata) {
     struct timeval tv;
     static int i = 0;
 
@@ -62,26 +64,28 @@ static void wakeup(AvahiPoll *_api, void *userdata) {
         g_main_loop_quit(loop);
 
     avahi_elapse_time(&tv, 1000, 0);
-    api->set_wakeup(api, &tv, wakeup, NULL);
+    api->timeout_update(t, &tv);
 }
 
-int main(int argc, char *argv[]) {
-    AvahiGLibPoll *s;
+int main(AVAHI_GCC_UNUSED int argc, AVAHI_GCC_UNUSED char *argv[]) {
+    AvahiGLibPoll *g;
     struct timeval tv;
     
-    s = avahi_glib_poll_new(NULL);
-    assert(s);
+    g = avahi_glib_poll_new(NULL, G_PRIORITY_DEFAULT);
+    assert(g);
 
-    api = avahi_glib_poll_get(s);
+    api = avahi_glib_poll_get(g);
 
     api->watch_new(api, 0, AVAHI_WATCH_IN, callback, NULL);
 
     avahi_elapse_time(&tv, 1000, 0);
-    api->set_wakeup(api, &tv, wakeup, NULL);
+    api->timeout_new(api, &tv, wakeup, NULL);
 
     loop = g_main_loop_new(NULL, FALSE);
     g_main_loop_run(loop);
     g_main_loop_unref(loop);
+
+    avahi_glib_poll_free(g);
     
     return 0;
 }