summaryrefslogtreecommitdiff
path: root/src/ring-call-channel.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ring-call-channel.c')
-rw-r--r--src/ring-call-channel.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/ring-call-channel.c b/src/ring-call-channel.c
index bd91f5b..1f4a6bd 100644
--- a/src/ring-call-channel.c
+++ b/src/ring-call-channel.c
@@ -106,7 +106,7 @@ struct _RingCallChannelPrivate
uint8_t state;
- unsigned constructed:1, released:1, closing:1;
+ unsigned constructed:1, released:1, closing:1, disposed:1;
unsigned call_instance_seen:1;
@@ -442,6 +442,10 @@ ring_call_channel_dispose(GObject *object)
RingCallChannelPrivate *priv = self->priv;
TpBaseChannel *base = TP_BASE_CHANNEL (object);
+ if (self->priv->disposed)
+ return;
+ self->priv->disposed = TRUE;
+
if (priv->member.handle) {
TpHandleRepoIface *repo = tp_base_connection_get_handles(
tp_base_channel_get_connection (base), TP_HANDLE_TYPE_CONTACT);