summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/atmodem/call-volume.c2
-rw-r--r--drivers/atmodem/network-registration.c2
-rw-r--r--drivers/atmodem/phonebook.c2
-rw-r--r--drivers/atmodem/voicecall.c3
4 files changed, 9 insertions, 0 deletions
diff --git a/drivers/atmodem/call-volume.c b/drivers/atmodem/call-volume.c
index d9a6cd03..6ba45a5c 100644
--- a/drivers/atmodem/call-volume.c
+++ b/drivers/atmodem/call-volume.c
@@ -210,6 +210,8 @@ static void at_call_volume_remove(struct ofono_call_volume *cv)
{
struct cv_data *cvd = ofono_call_volume_get_data(cv);
+ ofono_call_volume_set_data(cv, NULL);
+
g_free(cvd);
}
diff --git a/drivers/atmodem/network-registration.c b/drivers/atmodem/network-registration.c
index 1b67ad81..8adcc4eb 100644
--- a/drivers/atmodem/network-registration.c
+++ b/drivers/atmodem/network-registration.c
@@ -712,6 +712,8 @@ static void at_netreg_remove(struct ofono_netreg *netreg)
{
struct netreg_data *nd = ofono_netreg_get_data(netreg);
+ ofono_netreg_set_data(netreg, NULL);
+
g_free(nd);
}
diff --git a/drivers/atmodem/phonebook.c b/drivers/atmodem/phonebook.c
index 2c10775e..473a32d5 100644
--- a/drivers/atmodem/phonebook.c
+++ b/drivers/atmodem/phonebook.c
@@ -535,6 +535,8 @@ static void at_phonebook_remove(struct ofono_phonebook *pb)
if (pbd->old_charset)
g_free(pbd->old_charset);
+ ofono_phonebook_set_data(pb, NULL);
+
g_free(pbd);
}
diff --git a/drivers/atmodem/voicecall.c b/drivers/atmodem/voicecall.c
index 07336078..9ed36960 100644
--- a/drivers/atmodem/voicecall.c
+++ b/drivers/atmodem/voicecall.c
@@ -961,6 +961,9 @@ static void at_voicecall_remove(struct ofono_voicecall *vc)
g_slist_foreach(vd->calls, (GFunc) g_free, NULL);
g_slist_free(vd->calls);
+
+ ofono_voicecall_set_data(vc, NULL);
+
g_free(vd);
}