X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=zigbee-daemon%2Fzigbee-interface%2Fsrc%2Fzigbee_service_dbus_interface_service.c;h=75cc3d31eac02360ecc718cfa1d8ccfce3e6c2c7;hb=refs%2Fchanges%2F75%2F152975%2F2;hp=94038834b5018b2c59d7ceb1b9228034985b1ef5;hpb=2d6956cfe0264531e07aad7391e569eb77daaf55;p=platform%2Fcore%2Fconnectivity%2Fzigbee-manager.git diff --git a/zigbee-daemon/zigbee-interface/src/zigbee_service_dbus_interface_service.c b/zigbee-daemon/zigbee-interface/src/zigbee_service_dbus_interface_service.c index 9403883..75cc3d3 100644 --- a/zigbee-daemon/zigbee-interface/src/zigbee_service_dbus_interface_service.c +++ b/zigbee-daemon/zigbee-interface/src/zigbee_service_dbus_interface_service.c @@ -451,6 +451,9 @@ static void on_service_get_network_info_resp(ZigBeeServiceInterface *service_int payload->result, v_eui64, payload->node_id, payload->pan_id, payload->channel, payload->radio_tx_power); + if (v_eui64) + g_variant_unref(v_eui64); + g_free(cb_data); } @@ -701,8 +704,8 @@ static void on_service_get_device_list_resp(ZigBeeServiceInterface *service_inte invocation = zigbee_service_dbus_interface_ref_invocation(cb_data); zblib_check_null_free_and_ret("invocation", invocation, cb_data); - /* To-To : zigbee_service_complete_get_device_list */ - //zigbee_service_complete_get_device_list(service_object, invocation, resp_data); + /* TODO : zigbee_service_complete_get_device_list */ + /* zigbee_service_complete_get_device_list(service_object, invocation, resp_data); */ g_free(cb_data); } @@ -784,6 +787,9 @@ static void on_service_get_mac_resp(ZigBeeServiceInterface *service_interface, zigbee_service_complete_get_mac(service_object, invocation, payload->result, v_eui64); + if (v_eui64) + g_variant_unref(v_eui64); + g_free(cb_data); } @@ -861,31 +867,32 @@ static void on_service_get_device_info_resp(ZigBeeServiceInterface *service_inte invocation = zigbee_service_dbus_interface_ref_invocation(cb_data); zblib_check_null_free_and_ret("invocation", invocation, cb_data); - builder = g_variant_builder_new(G_VARIANT_TYPE ("a(qyayyay)")); + builder = g_variant_builder_new(G_VARIANT_TYPE("a(qyayyay)")); for (index = 0; index < payload->count; index++) { ZigbeeServiceGetDeviceInfoDetailResp_t *device = &(payload->list[index]); - GVariantBuilder* mac_builder = g_variant_builder_new(G_VARIANT_TYPE ("ay")); - GVariantBuilder* endpoint_builder = g_variant_builder_new(G_VARIANT_TYPE ("ay")); + GVariantBuilder* mac_builder = g_variant_builder_new(G_VARIANT_TYPE("ay")); + GVariantBuilder* endpoint_builder = g_variant_builder_new(G_VARIANT_TYPE("ay")); - for (i = 0; i < ZIGBEE_EUI64_SIZE; i++) { - g_variant_builder_add (mac_builder, "y", device->eui64[i]); - } - for (i = 0; i < device->endpoint_count; i++) { - g_variant_builder_add (endpoint_builder, "y", device->endpoints[i]); - } + for (i = 0; i < ZIGBEE_EUI64_SIZE; i++) + g_variant_builder_add(mac_builder, "y", device->eui64[i]); + for (i = 0; i < device->endpoint_count; i++) + g_variant_builder_add(endpoint_builder, "y", device->endpoints[i]); - g_variant_builder_add (builder, "(qyayyay)", + g_variant_builder_add(builder, "(qyayyay)", device->node_id, device->node_type, mac_builder, device->endpoint_count, endpoint_builder); - g_variant_builder_unref (mac_builder); - g_variant_builder_unref (endpoint_builder); + g_variant_builder_unref(mac_builder); + g_variant_builder_unref(endpoint_builder); } variant = g_variant_builder_end(builder); zigbee_service_complete_get_device_info(service_object, invocation, payload->result, variant); + if (variant) + g_variant_unref(variant); + g_free(cb_data); } @@ -965,6 +972,9 @@ static void on_service_get_endpoint_list_resp(ZigBeeServiceInterface *service_in zigbee_service_complete_get_endpoint_list(service_object, invocation, payload->result, v_endpoints); + if (v_endpoints) + g_variant_unref(v_endpoints); + g_free(cb_data); } @@ -1064,6 +1074,11 @@ static void on_service_get_cluster_list_resp(ZigBeeServiceInterface *service_int zigbee_service_complete_get_cluster_list(service_object, invocation, payload->result, v_in_clusters, v_out_clusters); + if (v_in_clusters) + g_variant_unref(v_in_clusters); + if (v_out_clusters) + g_variant_unref(v_out_clusters); + g_free(cb_data); } @@ -1245,7 +1260,7 @@ void zigbee_service_dbus_interface_service_notification(ZigBeeServiceInterface * NOT_USED(noti_cb_data); - switch(noti_id) { + switch (noti_id) { case ZBLIB_SERVICE_NOTI_FORM_NETWORK_DONE: { ZigbeeServiceServiceFormNetworkDone_t *panid_t = (ZigbeeServiceServiceFormNetworkDone_t*)noti_data; @@ -1268,14 +1283,14 @@ void zigbee_service_dbus_interface_service_notification(ZigBeeServiceInterface * child_t->endpoints, child_t->endpoint_count, TRUE, NULL, NULL); if (NULL == v_eui64 || NULL == v_endpoints) { Z_LOGE("Failed to create variant!"); - if (v_eui64) - g_object_unref(v_eui64); - if (v_endpoints) - g_object_unref(v_endpoints); } else { zigbee_service_emit_child_joined(service_object, v_eui64, child_t->endpoint_count, v_endpoints, child_t->node_id); } + if (v_eui64) + g_variant_unref(v_eui64); + if (v_endpoints) + g_variant_unref(v_endpoints); } break; case ZBLIB_SERVICE_NOTI_CHILD_REJOINED: { @@ -1284,11 +1299,10 @@ void zigbee_service_dbus_interface_service_notification(ZigBeeServiceInterface * GVariant *v_eui64 = g_variant_new_from_data(G_VARIANT_TYPE("a(y)"), child_t->eui64, ZIGBEE_EUI64_SIZE, TRUE, NULL, NULL); - if (NULL == v_eui64) { + if (NULL == v_eui64) Z_LOGE("Failed to create variant!"); - } else { + else zigbee_service_emit_child_rejoined(service_object, v_eui64); - } } break; case ZBLIB_SERVICE_NOTI_CHILD_LEFT: { @@ -1297,11 +1311,12 @@ void zigbee_service_dbus_interface_service_notification(ZigBeeServiceInterface * GVariant *v_eui64 = g_variant_new_from_data(G_VARIANT_TYPE("a(y)"), child_left_t->eui64, ZIGBEE_EUI64_SIZE, TRUE, NULL, NULL); - if (NULL == v_eui64) { + if (NULL == v_eui64) Z_LOGE("Failed to create variant!"); - } else { + else { zigbee_service_emit_child_left(service_object, v_eui64, child_left_t->status); + g_variant_unref(v_eui64); } } break;