[Telepathy-commits] [telepathy-glib/master] TpMessageMixin: stop leaking outgoing message structures

Simon McVittie simon.mcvittie at collabora.co.uk
Thu Dec 18 10:41:27 PST 2008


20080415180208-53eee-fae83863e2c4ffb5bb0906db49144f8888724648.gz
---
 telepathy-glib/message-mixin.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/telepathy-glib/message-mixin.c b/telepathy-glib/message-mixin.c
index 2c6ff4b..636f558 100644
--- a/telepathy-glib/message-mixin.c
+++ b/telepathy-glib/message-mixin.c
@@ -779,6 +779,16 @@ tp_message_mixin_sent (GObject *object,
     }
 
   message->priv->context = NULL;
+  memset (message->priv, '\xee', sizeof (message->priv));
+  g_slice_free (TpMessageMixinOutgoingMessagePrivate, message->priv);
+
+  for (i = 0; i < message->parts->len; i++)
+    g_hash_table_destroy (g_ptr_array_index (message->parts, i));
+
+  g_ptr_array_free (message->parts, TRUE);
+  /* poison message to make sure nobody dereferences it */
+  memset (message, '\xee', sizeof (message));
+  g_slice_free (TpMessageMixinOutgoingMessage, message);
 }
 
 
-- 
1.5.6.5




More information about the Telepathy-commits mailing list