summaryrefslogtreecommitdiff
path: root/src/call-channel.c
diff options
context:
space:
mode:
authorSjoerd Simons <sjoerd.simons@collabora.co.uk>2009-12-24 17:02:19 +0100
committerSjoerd Simons <sjoerd.simons@collabora.co.uk>2009-12-24 17:02:19 +0100
commit0a5b021d9a462b4ba437eeff9218acc4aba91d14 (patch)
tree37e0840e18fe0cc91a0cdccf4e8d46475755218e /src/call-channel.c
parent94686c7ab29982f17d8f6a559334d4bc352f1a43 (diff)
Free all data in finalize
Diffstat (limited to 'src/call-channel.c')
-rw-r--r--src/call-channel.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/src/call-channel.c b/src/call-channel.c
index a550f176a..b5e42f300 100644
--- a/src/call-channel.c
+++ b/src/call-channel.c
@@ -614,15 +614,6 @@ gabble_call_channel_dispose (GObject *object)
g_list_free (priv->contents);
priv->contents = NULL;
- if (priv->details != NULL)
- g_hash_table_unref (priv->details);
- priv->details = NULL;
-
- if (priv->reason != NULL)
- g_value_array_free (priv->reason);
- priv->reason = NULL;
-
- /* release any references held by the object here */
if (G_OBJECT_CLASS (gabble_call_channel_parent_class)->dispose)
G_OBJECT_CLASS (gabble_call_channel_parent_class)->dispose (object);
}
@@ -631,8 +622,10 @@ void
gabble_call_channel_finalize (GObject *object)
{
GabbleCallChannel *self = GABBLE_CALL_CHANNEL (object);
+ GabbleCallChannelPrivate *priv = self->priv;
- /* free any data held directly by the object here */
+ g_hash_table_unref (priv->details);
+ g_value_array_free (priv->reason);
g_free (self->priv->object_path);
g_free (self->priv->transport_ns);