From: John Ernberg <[email protected]>

---
 src/phonebook.c | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/src/phonebook.c b/src/phonebook.c
index 531b5a6..07bfcae 100644
--- a/src/phonebook.c
+++ b/src/phonebook.c
@@ -233,23 +233,28 @@ static void vcard_printf_end(GString *vcards)
        vcard_printf(vcards, "");
 }
 
-static void print_number(struct phonebook_number *pn, GString *vcards)
+static void print_number(gpointer pointer, gpointer user_data)
 {
+       struct phonebook_number *pn = pointer;
+       GString *vcards = user_data;
        vcard_printf_number(vcards, pn->number, pn->type, pn->category);
 }
 
-static void destroy_number(struct phonebook_number *pn)
+static void destroy_number(gpointer pointer)
 {
+       struct phonebook_number *pn = pointer;
        g_free(pn->number);
        g_free(pn);
 }
 
-static void print_merged_entry(struct phonebook_person *person, GString 
*vcards)
+static void print_merged_entry(gpointer pointer, gpointer user_data)
 {
+       struct phonebook_person *person = pointer;
+       GString *vcards = user_data;
        vcard_printf_begin(vcards);
        vcard_printf_text(vcards, person->text);
 
-       g_slist_foreach(person->number_list, (GFunc) print_number, vcards);
+       g_slist_foreach(person->number_list, print_number, vcards);
 
        vcard_printf_group(vcards, person->group);
        vcard_printf_email(vcards, person->email);
@@ -257,15 +262,15 @@ static void print_merged_entry(struct phonebook_person 
*person, GString *vcards)
        vcard_printf_end(vcards);
 }
 
-static void destroy_merged_entry(struct phonebook_person *person)
+static void destroy_merged_entry(gpointer pointer)
 {
+       struct phonebook_person *person = pointer;
        g_free(person->text);
        g_free(person->group);
        g_free(person->email);
        g_free(person->sip_uri);
 
-       g_slist_foreach(person->number_list, (GFunc) destroy_number, NULL);
-       g_slist_free(person->number_list);
+       g_slist_free_full(person->number_list, destroy_number);
 
        g_free(person);
 }
@@ -419,10 +424,9 @@ static void export_phonebook_cb(const struct ofono_error 
*error, void *data)
 
        /* convert the collected entries that are already merged to vcard */
        phonebook->merge_list = g_slist_reverse(phonebook->merge_list);
-       g_slist_foreach(phonebook->merge_list, (GFunc) print_merged_entry,
+       g_slist_foreach(phonebook->merge_list, print_merged_entry,
                                phonebook->vcards);
-       g_slist_foreach(phonebook->merge_list, (GFunc) destroy_merged_entry,
-                               NULL);
+       g_slist_free_full(phonebook->merge_list, destroy_merged_entry);
        g_slist_free(phonebook->merge_list);
        phonebook->merge_list = NULL;
 
-- 
1.9.1
_______________________________________________
ofono mailing list
[email protected]
https://lists.ofono.org/mailman/listinfo/ofono

Reply via email to