tBT_UUID *p_uuid,
UINT8 property,
UINT16 incl_srvc_s_handle,
+ UINT16 incl_srvc_e_handle,
tBTA_GATTC_ATTR_TYPE type)
{
#if (defined BTA_GATT_DEBUG && BTA_GATT_DEBUG == TRUE)
isvc->handle = handle;
memcpy(&isvc->uuid, p_uuid, sizeof(tBT_UUID));
isvc->incl_srvc_s_handle = incl_srvc_s_handle;
+ isvc->incl_srvc_e_handle = incl_srvc_e_handle;
isvc->owning_service = service;
isvc->included_service = bta_gattc_find_matching_service(
p_srvc_cb->p_srvc_cache, incl_srvc_s_handle);
&p_data->value.incl_service.service_type,
pri_srvc,
p_data->value.incl_service.s_handle,
+ p_data->value.incl_service.e_handle,
BTA_GATTC_ATTR_TYPE_INCL_SRVC);
break;
break;
case GATT_DISC_CHAR_DSCPT:
- bta_gattc_add_attr_to_cache(p_srvc_cb, p_data->handle, &p_data->type, 0,
- 0 /* incl_srvc_handle */,
+ bta_gattc_add_attr_to_cache(p_srvc_cb,
+ p_data->handle,
+ &p_data->type,
+ 0,
+ 0 /* incl_srvc_s_handle */,
+ 0 /* incl_srvc_e_handle */,
BTA_GATTC_ATTR_TYPE_CHAR_DESCR);
- break;
+ break;
}
}
}
BTGATT_DB_INCLUDED_SERVICE,
p_isvc->handle,
p_isvc->incl_srvc_s_handle /* s_handle */,
- 0 /* e_handle */,
+ p_isvc->incl_srvc_e_handle /* e_handle */,
p_isvc->handle,
p_isvc->uuid,
0 /* property */);
break;
case BTA_GATTC_ATTR_TYPE_CHAR_DESCR:
+ bta_gattc_add_attr_to_cache(p_srvc_cb,
+ p_attr->s_handle,
+ &p_attr->uuid,
+ p_attr->prop,
+ p_attr->incl_srvc_s_handle,
+ p_attr->incl_srvc_e_handle,
+ p_attr->attr_type);
+ break;
case BTA_GATTC_ATTR_TYPE_INCL_SRVC:
bta_gattc_add_attr_to_cache(p_srvc_cb,
p_attr->s_handle,
&p_attr->uuid,
p_attr->prop,
- p_attr->incl_srvc_handle,
+ p_attr->incl_srvc_s_handle,
+ p_attr->incl_srvc_e_handle,
p_attr->attr_type);
break;
}
**
*******************************************************************************/
void bta_gattc_fill_nv_attr(tBTA_GATTC_NV_ATTR *p_attr, UINT8 type, UINT16 s_handle,
- UINT16 e_handle, tBT_UUID uuid, UINT8 prop, UINT16 incl_srvc_handle,
- BOOLEAN is_primary)
+ UINT16 e_handle, tBT_UUID uuid, UINT8 prop, UINT16 incl_srvc_s_handle,
+ UINT16 incl_srvc_e_handle, BOOLEAN is_primary)
{
p_attr->s_handle = s_handle;
p_attr->e_handle = e_handle;
p_attr->is_primary = is_primary;
p_attr->id = 0;
p_attr->prop = prop;
- p_attr->incl_srvc_handle = incl_srvc_handle;
+ p_attr->incl_srvc_s_handle = incl_srvc_s_handle;
+ p_attr->incl_srvc_e_handle = incl_srvc_e_handle;
memcpy(&p_attr->uuid, &uuid, sizeof(tBT_UUID));
}
p_cur_srvc->e_handle,
p_cur_srvc->uuid,
0 /* properties */,
- 0 /* incl_srvc_handle */,
+ 0 /* incl_srvc_s_handle */,
+ 0 /* incl_srvc_e_handle */,
p_cur_srvc->is_primary);
}
0,
p_char->uuid,
p_char->properties,
- 0 /* incl_srvc_handle */,
+ 0 /* incl_srvc_s_handle */,
+ 0 /* incl_srvc_e_handle */,
FALSE);
if (!p_char->descriptors || list_is_empty(p_char->descriptors))
0,
p_desc->uuid,
0 /* properties */,
- 0 /* incl_srvc_handle */,
+ 0 /* incl_srvc_s_handle */,
+ 0 /* incl_srvc_e_handle */,
FALSE);
}
}
p_isvc->uuid,
0 /* properties */,
p_isvc->included_service->s_handle,
+ p_isvc->included_service->e_handle,
FALSE);
}
}