--- a/loudmouth/lm-message.c Fri Jan 23 05:29:37 2004 +0000
+++ b/loudmouth/lm-message.c Thu Jan 29 10:01:43 2004 +0000
@@ -202,8 +202,10 @@
LmMessage *
lm_message_new (const gchar *to, LmMessageType type)
{
- LmMessage *m = g_new0 (LmMessage, 1);
-
+ LmMessage *m;
+ gchar *id;
+
+ m = g_new0 (LmMessage, 1);
m->priv = g_new0 (LmMessagePriv, 1);
PRIV(m)->ref_count = 1;
@@ -212,7 +214,9 @@
m->node = _lm_message_node_new (_lm_message_type_to_string (type));
- lm_message_node_set_attribute (m->node, "id", _lm_utils_generate_id());
+ id = _lm_utils_generate_id ();
+ lm_message_node_set_attribute (m->node, "id", id);
+ g_free (id);
if (to) {
lm_message_node_set_attribute (m->node, "to", to);
@@ -241,9 +245,11 @@
LmMessageType type,
LmMessageSubType sub_type)
{
- LmMessage *m = lm_message_new (to, type);
+ LmMessage *m;
const gchar *type_str;
+ m = lm_message_new (to, type);
+
type_str = _lm_message_sub_type_to_string (sub_type);
if (type_str) {
@@ -337,6 +343,7 @@
if (PRIV(message)->ref_count == 0) {
lm_message_node_unref (message->node);
+ g_free (message->priv);
g_free (message);
}
}