From: sooyeon.kim Date: Wed, 23 May 2018 07:10:03 +0000 (+0900) Subject: Move 'dbus_bus_add_match' to vc_dbus_request_initialize X-Git-Tag: submit/tizen/20180523.073046^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F81%2F179881%2F2;p=platform%2Fcore%2Fuifw%2Fvoice-control.git Move 'dbus_bus_add_match' to vc_dbus_request_initialize Change-Id: I8e446a807b7919f37878e70154661a35e961e23a Signed-off-by: sooyeon.kim --- diff --git a/client/vc.c b/client/vc.c index b3c9b24..9a893f3 100644 --- a/client/vc.c +++ b/client/vc.c @@ -1631,6 +1631,7 @@ int __vc_cb_error(int reason, int daemon_pid, char* msg) /* check state */ if (state != VC_STATE_READY) { + SLOG(LOG_DEBUG, TAG_VCC, "[DEBUG] State is not READY"); if (VC_ERROR_SERVICE_RESET != reason) { SLOG(LOG_ERROR, TAG_VCC, "[ERROR] not connected client yet"); return -1; diff --git a/client/vc_dbus.c b/client/vc_dbus.c index 51714b3..186d259 100644 --- a/client/vc_dbus.c +++ b/client/vc_dbus.c @@ -170,8 +170,8 @@ static Eina_Bool listener_event_callback(void* data, Ecore_Fd_Handler *fd_handle SLOG(LOG_ERROR, TAG_VCC, "Match Error (%s)", err.message); dbus_error_free(&err); } - //FIXME - //__vc_cb_error(VC_ERROR_SERVICE_RESET, -1, "Daemon Reset"); + + __vc_cb_error(VC_ERROR_SERVICE_RESET, -1, "Daemon Reset"); SLOG(LOG_DEBUG, TAG_VCC, "@@@"); } /* NameOwnerChanged */ @@ -286,17 +286,6 @@ int vc_dbus_open_connection() return VC_ERROR_OPERATION_FAILED; } - /* add a rule for daemon error */ - snprintf(rule, 256, "sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',type='signal',arg0='%s'", VC_SERVER_SERVICE_INTERFACE); - dbus_bus_add_match(g_conn_listener, rule, &err); - - if (dbus_error_is_set(&err)) { - SLOG(LOG_ERROR, TAG_VCC, "Match Error (%s)", err.message); - dbus_error_free(&err); - __vc_dbus_connection_free(); - return VC_ERROR_OPERATION_FAILED; - } - int fd = 0; if (1 != dbus_connection_get_unix_fd(g_conn_listener, &fd)) { SLOG(LOG_ERROR, TAG_VCC, "fail to get fd from dbus "); @@ -496,6 +485,16 @@ int vc_dbus_request_initialize(int pid, int* mgr_pid, int* service_state, int* d *service_state = tmp_service_state; *daemon_pid = tmp_daemon_pid; + /* add a rule for daemon error */ + char rule[256] = {0, }; + snprintf(rule, 256, "sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',type='signal',arg0='%s'", VC_SERVER_SERVICE_INTERFACE); + dbus_bus_add_match(g_conn_listener, rule, &err); + + if (dbus_error_is_set(&err)) { + SLOG(LOG_ERROR, TAG_VCC, "Match Error (%s)", err.message); + dbus_error_free(&err); + } + SLOG(LOG_DEBUG, TAG_VCC, "@@ vc initialize : result = %d mgr = %d service = %d daemon_pid = %d", result, *mgr_pid, *service_state, *daemon_pid); } else { SLOG(LOG_ERROR, TAG_VCC, "@@ vc initialize : result = %d", result);