From: John Ernberg <[email protected]>
---
src/sim.c | 29 ++++++++++-------------------
1 file changed, 10 insertions(+), 19 deletions(-)
diff --git a/src/sim.c b/src/sim.c
index bcf5afd..94d8840 100644
--- a/src/sim.c
+++ b/src/sim.c
@@ -321,8 +321,9 @@ static char **get_service_numbers(GSList *service_numbers)
return ret;
}
-static void service_number_free(struct service_number *num)
+static void service_number_free(gpointer pointer)
{
+ struct service_number *num = pointer;
g_free(num->id);
g_free(num);
}
@@ -615,8 +616,7 @@ static DBusMessage *sim_set_property(DBusConnection *conn,
DBusMessage *msg,
set_ok = set_own_numbers(sim, own_numbers, msg);
error:
- g_slist_foreach(own_numbers, (GFunc) g_free, 0);
- g_slist_free(own_numbers);
+ g_slist_free_full(own_numbers, g_free);
if (set_ok)
return NULL;
@@ -1195,8 +1195,7 @@ check:
char **own_numbers;
DBusConnection *conn = ofono_dbus_get_connection();
- g_slist_foreach(sim->own_numbers, (GFunc) g_free, NULL);
- g_slist_free(sim->own_numbers);
+ g_slist_free_full(sim->own_numbers, g_free);
sim->own_numbers = sim->new_numbers;
own_numbers = get_own_numbers(sim->own_numbers);
@@ -1208,8 +1207,7 @@ check:
g_strfreev(own_numbers);
} else {
- g_slist_foreach(sim->new_numbers, (GFunc) g_free, NULL);
- g_slist_free(sim->new_numbers);
+ g_slist_free_full(sim->new_numbers, g_free);
}
sim->new_numbers = NULL;
@@ -1302,9 +1300,7 @@ static void sim_service_numbers_changed(int id, void
*userdata)
struct ofono_sim *sim = userdata;
if (sim->service_numbers) {
- g_slist_foreach(sim->service_numbers,
- (GFunc)service_number_free, NULL);
- g_slist_free(sim->service_numbers);
+ g_slist_free_full(sim->service_numbers, service_number_free);
sim->service_numbers = NULL;
}
@@ -2025,13 +2021,11 @@ skip_efpl:
}
if (efli) {
- g_slist_foreach(efli, (GFunc)g_free, NULL);
- g_slist_free(efli);
+ g_slist_free_full(efli, g_free);
}
if (efpl) {
- g_slist_foreach(efpl, (GFunc)g_free, NULL);
- g_slist_free(efpl);
+ g_slist_free_full(efpl, g_free);
}
if (sim->language_prefs != NULL)
@@ -2394,15 +2388,12 @@ static void sim_free_main_state(struct ofono_sim *sim)
sim->mnc[0] = '\0';
if (sim->own_numbers) {
- g_slist_foreach(sim->own_numbers, (GFunc)g_free, NULL);
- g_slist_free(sim->own_numbers);
+ g_slist_free_full(sim->own_numbers, g_free);
sim->own_numbers = NULL;
}
if (sim->service_numbers) {
- g_slist_foreach(sim->service_numbers,
- (GFunc)service_number_free, NULL);
- g_slist_free(sim->service_numbers);
+ g_slist_free_full(sim->service_numbers, service_number_free);
sim->service_numbers = NULL;
sim->sdn_ready = FALSE;
}
--
1.9.1
_______________________________________________
ofono mailing list
[email protected]
https://lists.ofono.org/mailman/listinfo/ofono