Use a GLib main loop
authorThadeu Lima de Souza Cascardo <cascardo@cascardo.info>
Mon, 7 Oct 2013 11:38:06 +0000 (08:38 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@cascardo.info>
Mon, 7 Oct 2013 11:38:06 +0000 (08:38 -0300)
f2fchat.c

index 55bdc5a..00c774f 100644 (file)
--- a/f2fchat.c
+++ b/f2fchat.c
  */
 
 #include "friend.h"
+#include <glib.h>
+
+static gboolean quit(gpointer data)
+{
+       GMainLoop *loop = data;
+       g_main_loop_quit(loop);
+       return G_SOURCE_CONTINUE;
+}
 
 int main(int argc, char **argv)
 {
        struct cache *cache;
-       int out = 0;
+       GMainLoop *loop;
        create_cache(&cache);
        load_cache(cache, "friends.cache");
-       while (!out) {
-               out = 1;
-       }
+       loop = g_main_loop_new(g_main_context_default(), TRUE);
+       g_idle_add(quit, loop);
+       g_main_loop_run(loop);
        store_cache(cache, "friends.cache");
        destroy_cache(cache);
        return 0;