From 1e52e1ff518987092cfe94bc5c9c4479ed535019 Mon Sep 17 00:00:00 2001 From: Wilmer van der Gaast Date: Sun, 11 Jul 2010 11:30:27 +0100 Subject: When cleaning up queries, q->data is free()d. Even if it turns out to be the "struct irc" containing all data belonging to a session. Sanitise memory management a little bit here. (There are some memory leaks in here too that need to be fixed at some point.) --- protocols/nogaim.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'protocols/nogaim.c') diff --git a/protocols/nogaim.c b/protocols/nogaim.c index c23b0a3a..7380c575 100644 --- a/protocols/nogaim.c +++ b/protocols/nogaim.c @@ -379,7 +379,7 @@ void imc_logout( struct im_connection *ic, int allow_reconnect ) void imcb_ask( struct im_connection *ic, char *msg, void *data, query_callback doit, query_callback dont ) { - query_add( (irc_t *) ic->bee->ui_data, ic, msg, doit, dont, data ); + query_add( (irc_t *) ic->bee->ui_data, ic, msg, doit, dont, g_free, data ); } void imcb_add_buddy( struct im_connection *ic, const char *handle, const char *group ) @@ -477,7 +477,7 @@ void imcb_ask_auth( struct im_connection *ic, const char *handle, const char *re data->ic = ic; data->handle = g_strdup( handle ); query_add( (irc_t *) ic->bee->ui_data, ic, s, - imcb_ask_auth_cb_yes, imcb_ask_auth_cb_no, data ); + imcb_ask_auth_cb_yes, imcb_ask_auth_cb_no, g_free, data ); } @@ -510,7 +510,7 @@ void imcb_ask_add( struct im_connection *ic, const char *handle, const char *rea data->ic = ic; data->handle = g_strdup( handle ); query_add( (irc_t *) ic->bee->ui_data, ic, s, - imcb_ask_add_cb_yes, imcb_ask_add_cb_no, data ); + imcb_ask_add_cb_yes, imcb_ask_add_cb_no, g_free, data ); } struct bee_user *imcb_buddy_by_handle( struct im_connection *ic, const char *handle ) -- cgit v1.2.3