# HG changeset patch # User Mark Doliner # Date 1041981860 0 # Node ID 64d834b6caf2b9b57533e93e16224dcff92db6dd # Parent d3069a71f14d073e8c0f83216239bc9db034a31b [gaim-migrate @ 4480] Fix a crash which happened under the following circumstances (and maybe other, similar circumstances): 1) Add an ICQ buddy that requires authorization to an AIM screen names buddy list 2) Do not request authorization 3) Delete the buddy from your buddy list It crashes because of some code that attempts to free the same memory twice. It's all good. Oh, also: 741 packets transmitted, 462 packets received, +11 duplicates, 37% packet loss That's Time Warner cable for you. committer: Tailor Script diff -r d3069a71f14d -r 64d834b6caf2 src/protocols/oscar/ssi.c --- a/src/protocols/oscar/ssi.c Tue Jan 07 22:19:43 2003 +0000 +++ b/src/protocols/oscar/ssi.c Tue Jan 07 23:24:20 2003 +0000 @@ -1283,7 +1283,7 @@ } else item->name = NULL; aim_freetlvchain(&item->data); - item->data = data; + item->data = aim_tlvlist_copy(data); } if ((item = aim_ssi_itemlist_find(sess->ssi.official, gid, bid))) { @@ -1295,12 +1295,13 @@ } else item->name = NULL; aim_freetlvchain(&item->data); - item->data = data; + item->data = aim_tlvlist_copy(data); } if ((userfunc = aim_callhandler(sess, rx->conn, snac->family, snac->subtype))) ret = userfunc(sess, rx); + aim_freetlvchain(&data); free(name); }