libpurple/protocols/msn/slplink.c

changeset 31136
643ef83b4c67
parent 31076
dcc26c5e9d7e
child 31147
99a593a0819b
--- a/libpurple/protocols/msn/slplink.c	Sun Nov 21 08:47:08 2010 +0000
+++ b/libpurple/protocols/msn/slplink.c	Sun Nov 21 09:56:48 2010 +0000
@@ -502,7 +502,6 @@
 	slpcall = msn_slp_process_msg(slplink, slpmsg);
 
 	if (slpcall == NULL) {
-		msn_slpmsg_destroy(slpmsg);
 		return;
 	}
 
@@ -541,8 +540,6 @@
 		}
 	}
 
-	msn_slpmsg_destroy(slpmsg);
-
 	if (!slpcall->wait_for_socket && slpcall->wasted)
 		msn_slpcall_destroy(slpcall);
 }
@@ -625,6 +622,8 @@
 	/* All the pieces of the slpmsg have been received */
 	if (header->offset + header->length >= header->total_size)
 		process_complete_msg(slplink, slpmsg, header);
+
+	msn_slpmsg_destroy(slpmsg);
 }
 
 void

mercurial