From 48f93f761916004df5b43dd6fbb25dc937599386 Mon Sep 17 00:00:00 2001 From: Johan Hedberg Date: Wed, 19 Mar 2014 19:28:19 +0200 Subject: [PATCH] attrib: Use destroy notify for included query --- attrib/gatt.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/attrib/gatt.c b/attrib/gatt.c index 7e5803d41..1816234c2 100644 --- a/attrib/gatt.c +++ b/attrib/gatt.c @@ -342,16 +342,19 @@ static void resolve_included_uuid_cb(uint8_t status, const uint8_t *pdu, uuid = att_get_uuid128(buf); bt_uuid_to_string(&uuid, incl->uuid, sizeof(incl->uuid)); isd->includes = g_slist_append(isd->includes, incl); + query->included = NULL; done: - if (err) - g_free(incl); - if (isd->err == 0) isd->err = err; +} - isd_unref(isd); +static void inc_query_free(void *data) +{ + struct included_uuid_query *query = data; + isd_unref(query->isd); + g_free(query->included); g_free(query); } @@ -368,7 +371,8 @@ static guint resolve_included_uuid(struct included_discovery *isd, query->included = incl; return g_attrib_send(isd->attrib, 0, buf, oplen, - resolve_included_uuid_cb, query, NULL); + resolve_included_uuid_cb, query, + inc_query_free); } static struct gatt_included *included_from_buf(const uint8_t *buf, gsize len) -- 2.47.3