summaryrefslogtreecommitdiffstats
path: root/stack/gatt/gatt_utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'stack/gatt/gatt_utils.c')
-rw-r--r--stack/gatt/gatt_utils.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/stack/gatt/gatt_utils.c b/stack/gatt/gatt_utils.c
index 11d8dff71..5030c5328 100644
--- a/stack/gatt/gatt_utils.c
+++ b/stack/gatt/gatt_utils.c
@@ -2125,15 +2125,16 @@ void gatt_end_operation(tGATT_CLCB *p_clcb, tGATT_STATUS status, void *p_data)
GATT_TRACE_DEBUG ("gatt_end_operation status=%d op=%d subtype=%d",
status, p_clcb->operation, p_clcb->op_subtype);
+ memset(&cb_data.att_value, 0, sizeof(tGATT_VALUE));
if (p_cmpl_cb != NULL && p_clcb->operation != 0)
{
if (p_clcb->operation == GATTC_OPTYPE_READ)
{
- memset(&cb_data.att_value, 0, sizeof(tGATT_VALUE));
cb_data.att_value.handle = p_clcb->s_handle;
cb_data.att_value.len = p_clcb->counter;
- if (p_data)
+
+ if (p_data && p_clcb->counter)
memcpy (cb_data.att_value.value, p_data, cb_data.att_value.len);
}