summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKai Vehmanen <kai.vehmanen@nokia.com>2011-01-20 23:40:20 +0200
committerKai Vehmanen <kai.vehmanen@nokia.com>2011-01-21 13:15:54 +0200
commit3bcc59b7b20b694e5bcd719816f1f6d328ddb8db (patch)
treee85bb1885fedbad461132a46f43985525dfa5a6c
parentbc8da39ffa02155858fcce83dbad3bc6da1558ff (diff)
ring-conference-channel: clear request queue when disposing
Cancel any pending modem requests when running dispose. Otherwise there could be callbacks with pointers to a stale conference channel object.
-rw-r--r--src/ring-conference-channel.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/ring-conference-channel.c b/src/ring-conference-channel.c
index 33fd0b0..f4789db 100644
--- a/src/ring-conference-channel.c
+++ b/src/ring-conference-channel.c
@@ -1014,6 +1014,10 @@ ring_conference_channel_dispose(GObject *obj)
}
}
+ while (!g_queue_is_empty (self->priv->requests)) {
+ modem_request_cancel (g_queue_pop_head (self->priv->requests));
+ }
+
((GObjectClass *)ring_conference_channel_parent_class)->dispose(obj);
}