# HG changeset patch
# User Nathan Walp <nwalp@pidgin.im>
# Date 1062951778 0
# Node ID f5c483cdd1d87a681905999cf90ebd85c58882f5
# Parent  b8bc8dd411ccd47315fdf9b55322effa77c2ae3d
[gaim-migrate @ 7317]
more memleak fixes.  ChipX86 will probably revert these, since I probably did it wrong ;-)

committer: Tailor Script <tailor@pidgin.im>

diff -r b8bc8dd411cc -r f5c483cdd1d8 src/protocols/msn/notification.c
--- a/src/protocols/msn/notification.c	Sun Sep 07 15:55:28 2003 +0000
+++ b/src/protocols/msn/notification.c	Sun Sep 07 16:22:58 2003 +0000
@@ -349,11 +349,14 @@
 
 	if ((s = gaim_ssl_write(gsc, request_str, strlen(request_str))) <= 0)
 	{
+		g_free(request_str);
 		gaim_connection_error(gc, _("Unable to write to MSN Nexus server."));
 
 		return;
 	}
 
+	g_free(request_str);
+
 	if ((s = msn_ssl_read(gsc, &buffer)) <= 0)
 	{
 		gaim_connection_error(gc, _("Unable to read from MSN Nexus server."));
@@ -507,10 +510,12 @@
 
 	if ((s = gaim_ssl_write(gsc, request_str, strlen(request_str))) <= 0)
 	{
+		g_free(request_str);
 		gaim_connection_error(gc, _("Unable to write to MSN Nexus server."));
 		return;
 	}
 
+	g_free(request_str);
 	g_free(session->ssl_url);
 	session->ssl_url = NULL;
 
@@ -636,6 +641,8 @@
 			}
 		}
 
+		g_free(challenge_data);
+
 #if 0
 		passport_str = g_strdup(msn_url_decode(params[3]));
 
diff -r b8bc8dd411cc -r f5c483cdd1d8 src/protocols/msn/servconn.c
--- a/src/protocols/msn/servconn.c	Sun Sep 07 15:55:28 2003 +0000
+++ b/src/protocols/msn/servconn.c	Sun Sep 07 16:22:58 2003 +0000
@@ -278,6 +278,9 @@
 	if (servconn->server != NULL)
 		g_free(servconn->server);
 
+	g_hash_table_destroy(servconn->commands);
+	g_hash_table_destroy(servconn->msg_types);
+
 	g_free(servconn);
 }
 
diff -r b8bc8dd411cc -r f5c483cdd1d8 src/protocols/msn/session.c
--- a/src/protocols/msn/session.c	Sun Sep 07 15:55:28 2003 +0000
+++ b/src/protocols/msn/session.c	Sun Sep 07 16:22:58 2003 +0000
@@ -59,6 +59,12 @@
 	if (session->dispatch_server != NULL)
 		g_free(session->dispatch_server);
 
+	if (session->ssl_login_path != NULL)
+		g_free(session->ssl_login_path);
+
+	if (session->ssl_login_host != NULL)
+		g_free(session->ssl_login_host);
+
 	while (session->switches != NULL)
 		msn_switchboard_destroy(session->switches->data);