X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fafm-user-daemon.c;h=f6d2aef5488fe0511ee4a890d23bbeebab12252c;hb=7fc272e5a9afc922f14c47b4c27d0a564e2de4ca;hp=87d7e7124905297aa2933bfe6df4be96a1d2c4f1;hpb=d7a517e6b430ba2d8a60467e3c438fe2a5c12df6;p=src%2Fapp-framework-main.git diff --git a/src/afm-user-daemon.c b/src/afm-user-daemon.c index 87d7e71..f6d2aef 100644 --- a/src/afm-user-daemon.c +++ b/src/afm-user-daemon.c @@ -56,8 +56,7 @@ static struct option options[] = { { NULL, 0, NULL, 0 } }; -static struct jbus *jbus; -static struct jbus *jbusys; +static struct jbus *jbuses[2]; static struct afm_db *afdb; const char error_nothing[] = "[]"; @@ -174,7 +173,7 @@ static void on_signal_changed(struct json_object *obj) /* update the database */ afm_db_update_applications(afdb); /* propagate now */ - jbus_send_signal_j(jbus, "changed", obj); + jbus_send_signal_j(jbuses[1], "changed", obj); } static int daemonize() @@ -273,40 +272,40 @@ int main(int ac, char **av) } /* init observers */ - jbusys = create_jbus(0, AFM_SYSTEM_DBUS_PATH); - if (!jbusys) { + jbuses[0] = create_jbus(0, AFM_SYSTEM_DBUS_PATH); + if (!jbuses[0]) { ERROR("create_jbus failed for system"); return 1; } - if(jbus_on_signal_j(jbusys, "changed", on_signal_changed)) { + if(jbus_on_signal_j(jbuses[0], "changed", on_signal_changed)) { ERROR("adding signal observer failed"); return 1; } /* init service */ - jbus = create_jbus(1, AFM_USER_DBUS_PATH); - if (!jbus) { + jbuses[1] = create_jbus(1, AFM_USER_DBUS_PATH); + if (!jbuses[1]) { ERROR("create_jbus failed"); return 1; } - if(jbus_add_service_j(jbus, "runnables", on_runnables) - || jbus_add_service_j(jbus, "detail", on_detail) - || jbus_add_service_j(jbus, "start", on_start) - || jbus_add_service_j(jbus, "terminate", on_terminate) - || jbus_add_service_j(jbus, "stop", on_stop) - || jbus_add_service_j(jbus, "continue", on_continue) - || jbus_add_service_j(jbus, "runners", on_runners) - || jbus_add_service_j(jbus, "state", on_state)) { + if(jbus_add_service_j(jbuses[1], "runnables", on_runnables) + || jbus_add_service_j(jbuses[1], "detail", on_detail) + || jbus_add_service_j(jbuses[1], "start", on_start) + || jbus_add_service_j(jbuses[1], "terminate", on_terminate) + || jbus_add_service_j(jbuses[1], "stop", on_stop) + || jbus_add_service_j(jbuses[1], "continue", on_continue) + || jbus_add_service_j(jbuses[1], "runners", on_runners) + || jbus_add_service_j(jbuses[1], "state", on_state)) { ERROR("adding services failed"); return 1; } /* start and run */ - if (jbus_start_serving(jbus)) { + if (jbus_start_serving(jbuses[1])) { ERROR("can't start server"); return 1; } - while (!jbus_read_write_dispatch(jbus, -1)); + while (jbus_read_write_dispatch_multiple(jbuses, 2, -1, 20) >= 0); return 0; }