Mercurial > pidgin.yaz
diff libpurple/protocols/simple/simple.c @ 18574:94f4048f1380
Fix from Will Hawkins to plug some leaks in error cases for the SIMPLE prpl. References #2181.
author | Daniel Atallah <daniel.atallah@gmail.com> |
---|---|
date | Fri, 20 Jul 2007 16:31:39 +0000 |
parents | 16bdcffb1c62 |
children | 941965d6fd88 315151da0dc6 |
line wrap: on
line diff
--- a/libpurple/protocols/simple/simple.c Fri Jul 20 05:09:46 2007 +0000 +++ b/libpurple/protocols/simple/simple.c Fri Jul 20 16:31:39 2007 +0000 @@ -976,14 +976,16 @@ if(!isc) { purple_debug_info("simple", "process_incoming_message: can not parse iscomposing\n"); + g_free(from); return; } state = xmlnode_get_child(isc, "state"); if(!state) { - purple_debug_info("simple", "process_incoming_message: no state found\n"); - xmlnode_free(isc); + purple_debug_info("simple", "process_incoming_message: no state found\n"); + xmlnode_free(isc); + g_free(from); return; } @@ -1063,6 +1065,7 @@ if(!pidf) { purple_debug_info("simple", "process_incoming_notify: no parseable pidf\n"); + g_free(from); return; } @@ -1073,6 +1076,7 @@ if(!basicstatus) { purple_debug_info("simple", "process_incoming_notify: no basic found\n"); xmlnode_free(pidf); + g_free(from); return; } @@ -1081,6 +1085,7 @@ if(!tmp2) { purple_debug_info("simple", "process_incoming_notify: no basic data found\n"); xmlnode_free(pidf); + g_free(from); return; }