if (g_slist_length(gatt_services) == 0) {
ERR("No registered GATT services!!!!");
g_dbus_method_invocation_return_value(invocation, NULL);
+ g_variant_builder_unref(builder);
return;
}
int __bt_hal_add_service_to_dbus(char *app_path, int slot, btgatt_srvc_id_t *srvc_id)
{
+ gboolean ret;
/* For GATT service specific */
GDBusNodeInfo *node_info;
guint object_id;
g_variant_builder_add(builder, "{sa{sv}}",
GATT_SERV_INTERFACE, inner_builder);
- g_dbus_connection_emit_signal(g_conn, NULL, "/",
+ ret = g_dbus_connection_emit_signal(g_conn, NULL, "/",
"org.freedesktop.Dbus.ObjectManager",
"InterfacesAdded",
g_variant_new("(oa{sa{sv}})",
path, builder),
&error);
+ if (!ret) {
+ if (error) {
+ /* dbus gives error cause */
+ ERR("d-bus api failure: errcode[%x], message[%s]",
+ error->code, error->message);
+ g_clear_error(&error);
+ }
+ }
/* Send Service handle to application */
user_data = g_malloc0(sizeof(hal_gatt_service_added));
bt_uuid_t *uuid, int properties,
int permissions)
{
+ gboolean ret;
GError *error = NULL;
guint object_id;
GDBusNodeInfo *node_info;
GATT_CHAR_INTERFACE,
inner_builder);
- g_dbus_connection_emit_signal(g_conn, NULL, "/",
+ ret = g_dbus_connection_emit_signal(g_conn, NULL, "/",
"org.freedesktop.Dbus.ObjectManager",
"InterfacesAdded",
g_variant_new("(oa{sa{sv}})",
path, builder),
&error);
+ if (!ret) {
+ if (error) {
+ /* dbus gives error cause */
+ ERR("d-bus api failure: errcode[%x], message[%s]",
+ error->code, error->message);
+ g_clear_error(&error);
+ }
+ }
//*char_path = g_strdup(path);
g_variant_new("(oa{sa{sv}})",
path, builder),
&error);
+ if (error != NULL) {
+ ERR("g_dbus_connection_emit_signal failed: errCode[%x], message[%s]",
+ error->code, error->message);
+ g_clear_error(&error);
+ }
//*desc_path = g_strdup(path);
{
struct gatt_service_info *svc_info = NULL;
GSList *l = NULL;
-
for (l = gatt_services; l; l = g_slist_next(l)) {
svc_info = (struct gatt_service_info *)l->data;
- if (svc_info->serv_path == service_path) {
+
+
+ if (!g_strcmp0(svc_info->serv_path, service_path)) {
DBG("Return the state of the gatt service %d",
svc_info->is_svc_registered);
return svc_info->is_svc_registered;
update_value = g_variant_new("ay", inner_builder);
- outer_builder = g_variant_builder_new(G_VARIANT_TYPE_ARRAY);
g_variant_builder_add(outer_builder, "{sv}", "Value",
update_value);