Mercurial > pidgin
changeset 25596:13d8b6c6ae42
applied changes from 8567515a55af9b920b1ff380fe95c5f9c138f4ec
through 277dbfa504b60a873008deb330ed734a384e33f5
Patch from Stefan Becker to plug a couple of memory leaks in libpurple/mime.c
References #9088
author | Stu Tomlinson <stu@nosnilmot.com> |
---|---|
date | Fri, 01 May 2009 16:05:55 +0000 |
parents | 65e7395d420e |
children | 54dcfe059dd4 |
files | COPYRIGHT libpurple/mime.c |
diffstat | 2 files changed, 9 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/COPYRIGHT Thu Apr 30 22:53:06 2009 +0000 +++ b/COPYRIGHT Fri May 01 16:05:55 2009 +0000 @@ -30,6 +30,7 @@ Derek Battams Martin Bayard Curtis Beattie +Stefan Becker Dave Bell Igor Belyi Brian Bernas
--- a/libpurple/mime.c Thu Apr 30 22:53:06 2009 +0000 +++ b/libpurple/mime.c Fri May 01 16:05:55 2009 +0000 @@ -113,7 +113,7 @@ fields_loadline(struct mime_fields *mf, const char *line, gsize len) { /* split the line into key: value */ - char *key, *val; + char *key, *newkey, *val; char **tokens; /* feh, need it to be NUL terminated */ @@ -129,17 +129,18 @@ /* normalize whitespace (sorta) and trim on key and value */ tokens = g_strsplit(key, "\t\r\n", 0); - key = g_strjoinv("", tokens); - key = g_strstrip(key); + newkey = g_strjoinv("", tokens); + g_strstrip(newkey); g_strfreev(tokens); tokens = g_strsplit(val, "\t\r\n", 0); val = g_strjoinv("", tokens); - val = g_strstrip(val); + g_strstrip(val); g_strfreev(tokens); - fields_set(mf, key, val); + fields_set(mf, newkey, val); + g_free(newkey); g_free(key); g_free(val); } @@ -439,6 +440,8 @@ b = tail; } + + g_free(bnd); }