diff libpurple/protocols/msn/oim.c @ 20501:f6dff814d95f

cleans up ownership of soap callback data, this soap stuff is perfect weight-loss pill, because it makes you want to throw up
author Ka-Hing Cheung <khc@hxbc.us>
date Sun, 09 Sep 2007 01:42:46 +0000
parents 403ff626b803
children 905891855710
line wrap: on
line diff
--- a/libpurple/protocols/msn/oim.c	Sun Sep 09 00:50:14 2007 +0000
+++ b/libpurple/protocols/msn/oim.c	Sun Sep 09 01:42:46 2007 +0000
@@ -239,6 +239,9 @@
 	MsnSession *session = soapconn->session;
 	MsnOim * oim;
 
+	if (soapconn->body == NULL)
+		return;
+
 	g_return_if_fail(session != NULL);
 	oim = soapconn->session->oim;
 	g_return_if_fail(oim != NULL);
@@ -338,6 +341,8 @@
 {
 	MsnSoapConn * soapconn = data;
 
+	if (soapconn->body == NULL)
+		return;
 	purple_debug_info("MSNP14","OIM delete read buffer:{%s}\n",soapconn->body);
 
 	msn_soap_free_read_buf(soapconn);
@@ -571,6 +576,9 @@
 	MsnSoapConn * soapconn = data;
 	MsnOim * oim = soapconn->session->oim;
 
+	if (soapconn->body == NULL)
+		return;
+
 	purple_debug_info("MSNP14","OIM get read buffer:{%s}\n",soapconn->body);
 
 	/*we need to process the read message!*/