aboutsummaryrefslogtreecommitdiff
path: root/src/mm-iface-modem-cdma.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mm-iface-modem-cdma.c')
-rw-r--r--src/mm-iface-modem-cdma.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mm-iface-modem-cdma.c b/src/mm-iface-modem-cdma.c
index 57914df1..c09905b1 100644
--- a/src/mm-iface-modem-cdma.c
+++ b/src/mm-iface-modem-cdma.c
@@ -1551,6 +1551,14 @@ mm_iface_modem_cdma_shutdown (MMIfaceModemCdma *self)
{
g_return_if_fail (MM_IS_IFACE_MODEM_CDMA (self));
+ /* Remove RegistrationCheckContext object to make sure any pending
+ * invocation of periodic_registration_check is cancelled before the
+ * DBus skeleton is removed. */
+ if (G_LIKELY (registration_check_context_quark))
+ g_object_set_qdata (G_OBJECT (self),
+ registration_check_context_quark,
+ NULL);
+
/* Unexport DBus interface and remove the skeleton */
mm_gdbus_object_skeleton_set_modem_cdma (MM_GDBUS_OBJECT_SKELETON (self), NULL);
g_object_set (self,