--- a/hangouts_events.c Tue Sep 25 16:12:54 2018 -0500
+++ b/hangouts_events.c Tue Oct 16 14:07:04 2018 -0500
@@ -556,7 +556,6 @@
purple_message_set_time(message, message_timestamp);
purple_conversation_write_message(PURPLE_CONVERSATION(imconv), message);
- purple_message_destroy(message);
@@ -756,7 +755,6 @@
purple_message_set_time(message, message_timestamp);
purple_conversation_write_message(PURPLE_CONVERSATION(imconv), message);
- purple_message_destroy(message);
@@ -803,7 +801,6 @@
PurpleMessage *img_message = purple_message_new_outgoing(gaia_id, url, msg_flags);
purple_message_set_time(img_message, message_timestamp);
purple_conversation_write_message(pconv, img_message);
- purple_message_destroy(img_message);
--- a/purplecompat.h Tue Sep 25 16:12:54 2018 -0500
+++ b/purplecompat.h Tue Oct 16 14:07:04 2018 -0500
@@ -94,7 +94,9 @@
#define PurpleMessage PurpleConvMessage
#define purple_message_set_time(msg, time) ((msg)->when = (time))
-#define purple_conversation_write_message(conv, msg) purple_conversation_write(conv, msg->who, msg->what, msg->flags, msg->when)
+#define purple_conversation_write_message(conv, msg) \ + purple_conversation_write(conv, msg->who, msg->what, msg->flags, msg->when); \ + purple_message_destroy(msg) static inline PurpleMessage *
purple_message_new_outgoing(const gchar *who, const gchar *contents, PurpleMessageFlags flags)