From fb51fdbf17571d7dd1e04201b240936dc52c9a7f Mon Sep 17 00:00:00 2001 From: saerome kim Date: Fri, 3 Feb 2017 15:12:43 +0900 Subject: [PATCH] Chanage method when calling 'query' method as sync. Change-Id: I87f78744910d0b16e49fa740566b9eef9975bb01 Signed-off-by: saerome kim --- lib/zbl-dbus.c | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/lib/zbl-dbus.c b/lib/zbl-dbus.c index 301a2a9..969e1cb 100644 --- a/lib/zbl-dbus.c +++ b/lib/zbl-dbus.c @@ -6070,6 +6070,10 @@ int zbl_identify(nwk_addr addr16, unsigned char dst_ep, unsigned short identify_ int zbl_identify_query(nwk_addr addr16, unsigned char dst_ep, zb_zcl_identify_query_cb cb, void *user_data) { + int result = ZIGBEE_ERROR_NONE; + GVariant *variant = NULL; + GError *dbus_err = NULL; + int sub_id, to; zbl_req_cb_s *container; @@ -6098,11 +6102,19 @@ int zbl_identify_query(nwk_addr addr16, unsigned char dst_ep, container->tid = g_timeout_add_seconds(to, _zbl_timeout_cb, container); container->userdata = user_data; - g_dbus_proxy_call(zcl_identify_proxy, "query", - g_variant_new("(qy)", addr16, dst_ep), - G_DBUS_CALL_FLAGS_NONE, to, NULL, NULL, container); + variant = g_dbus_proxy_call_sync(zcl_identify_proxy, "query", + g_variant_new("(qy)", addr16, dst_ep), G_DBUS_CALL_FLAGS_NONE, -1, NULL, &dbus_err); + if (variant) { + g_variant_get(variant, "(i)", &result); + DBG("ret = [0x%x]", result); + g_variant_unref(variant); + } else { + ERR("Failed to get identify [%s]", dbus_err->message); + g_error_free(dbus_err); + return ZIGBEE_ERROR_IO_ERROR; + } - return ZIGBEE_ERROR_NONE; + return result; } int zbl_add_group(nwk_addr addr16, unsigned char ep, unsigned short group_id, -- 2.34.1