OSDN Git Service

android: Start command watch after notify channel is connected
authorSzymon Janc <szymon.janc@gmail.com>
Thu, 24 Oct 2013 09:54:20 +0000 (11:54 +0200)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Thu, 24 Oct 2013 15:23:08 +0000 (18:23 +0300)
Daemon should start processing commands only after both communication
channels were connected.

android/main.c

index 9879f05..740b532 100644 (file)
@@ -288,9 +288,11 @@ static gboolean notif_connect_cb(GIOChannel *io, GIOCondition cond,
 
        g_io_add_watch(io, cond, notif_watch_cb, NULL);
 
-       info("Successfully connected to HAL");
+       cond = G_IO_IN | G_IO_ERR | G_IO_HUP | G_IO_NVAL;
 
-       /* TODO start handling commands */
+       g_io_add_watch(hal_cmd_io, cond, cmd_watch_cb, NULL);
+
+       info("Successfully connected to HAL");
 
        return FALSE;
 }
@@ -305,10 +307,6 @@ static gboolean cmd_connect_cb(GIOChannel *io, GIOCondition cond,
                return FALSE;
        }
 
-       cond = G_IO_IN | G_IO_ERR | G_IO_HUP | G_IO_NVAL;
-
-       g_io_add_watch(io, cond, cmd_watch_cb, NULL);
-
        hal_notif_io = connect_hal(notif_connect_cb);
        if (!hal_notif_io) {
                error("Cannot connect to HAL, terminating");