Mercurial > pidgin.yaz
changeset 8393:8deb49dea682
[gaim-migrate @ 9122]
Fix a GINORMOUS memleak of ZERO bytes. You heard me.
I installed Gentoo for THIS?
I'm off to get my 5 hours of sleep.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Wed, 03 Mar 2004 07:23:30 +0000 |
parents | 6995abd533f5 |
children | a41efeb3a9ee |
files | src/protocols/oscar/locate.c |
diffstat | 1 files changed, 8 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/protocols/oscar/locate.c Wed Mar 03 06:26:02 2004 +0000 +++ b/src/protocols/oscar/locate.c Wed Mar 03 07:23:30 2004 +0000 @@ -241,8 +241,10 @@ if (userinfo->info != NULL) { free(cur->info); free(cur->info_encoding); - cur->info = (char *)malloc(userinfo->info_len); - memcpy(cur->info, userinfo->info, userinfo->info_len); + if (userinfo->info_len > 0) { + cur->info = (char *)malloc(userinfo->info_len); + memcpy(cur->info, userinfo->info, userinfo->info_len); + } cur->info_encoding = strdup(userinfo->info_encoding); cur->info_len = userinfo->info_len; } @@ -250,8 +252,10 @@ if (userinfo->away != NULL) { free(cur->away); free(cur->away_encoding); - cur->away = (char *)malloc(userinfo->away_len); - memcpy(cur->away, userinfo->away, userinfo->away_len); + if (userinfo->away_len > 0) { + cur->away = (char *)malloc(userinfo->away_len); + memcpy(cur->away, userinfo->away, userinfo->away_len); + } cur->away_encoding = strdup(userinfo->away_encoding); cur->away_len = userinfo->away_len; }