Hi Andrei, On Monday 16 June 2014 10:57:50 Andrei Emeltchenko wrote: > From: Andrei Emeltchenko <andrei.emeltchenko@xxxxxxxxx> > > --- > profiles/health/hdp_util.c | 16 +++++++++------- > 1 file changed, 9 insertions(+), 7 deletions(-) > > diff --git a/profiles/health/hdp_util.c b/profiles/health/hdp_util.c > index 7185805..876a105 100644 > --- a/profiles/health/hdp_util.c > +++ b/profiles/health/hdp_util.c > @@ -597,6 +597,13 @@ fail: > return NULL; > } > > +static void free_hdp_list(void *list) > +{ > + sdp_list_t *hdp_list = list; > + > + sdp_list_free(hdp_list, (sdp_free_func_t)sdp_data_free); > +} > + > static gboolean register_features(struct hdp_application *app, > sdp_list_t **sup_features) > { > @@ -619,16 +626,11 @@ static gboolean register_features(struct > hdp_application *app, fail: > if (hdp_feature != NULL) > sdp_list_free(hdp_feature, (sdp_free_func_t)sdp_data_free); > + if (sup_features != NULL) > + sdp_list_free(*sup_features, free_hdp_list); I have a feeling that this should be fixed in caller code ie register_service_sup_features. Also sup_features was already dereferences few lines above so this check is not needed (or should it be *sup_features != NULL ?). > return FALSE; > } > > -static void free_hdp_list(void *list) > -{ > - sdp_list_t *hdp_list = list; > - > - sdp_list_free(hdp_list, (sdp_free_func_t)sdp_data_free); > -} > - > static gboolean register_service_sup_features(GSList *app_list, > sdp_record_t *sdp_record) > { -- Szymon K. Janc szymon.janc@xxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html