Mercurial > pidgin.yaz
diff libfaim/aim_chatnav.c @ 715:58106806ac2b
[gaim-migrate @ 725]
yay
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Fri, 18 Aug 2000 00:21:53 +0000 |
parents | e4c34ca88d9b |
children | 26e96119d5a5 |
line wrap: on
line diff
--- a/libfaim/aim_chatnav.c Thu Aug 17 23:23:24 2000 +0000 +++ b/libfaim/aim_chatnav.c Fri Aug 18 00:21:53 2000 +0000 @@ -68,6 +68,7 @@ struct aim_snac_t *snac; u_long snacid; rxcallback_t userfunc; + int ret=1; snacid = aimutil_get32(command->data+6); snac = aim_remsnac(sess, snacid); @@ -96,7 +97,6 @@ int curexchange = 0; struct aim_tlv_t *exchangetlv; u_char maxrooms = 0; - int ret = 1; struct aim_tlvlist_t *innerlist; tlvlist = aim_readtlvchain(command->data+10, command->commandlen-10); @@ -215,7 +215,8 @@ exchanges[curexchange-1].lang2 = aim_gettlv_str(innerlist, 0x00d9, 1); else exchanges[curexchange-1].lang2 = NULL; - + + aim_freetlvchain(&innerlist); } /* @@ -245,33 +246,38 @@ curexchange--; } free(exchanges); - aim_freetlvchain(&innerlist); aim_freetlvchain(&tlvlist); - return ret; + + break; } case 0x0003: /* request exchange info */ printf("faim: chatnav_parse_info: resposne to exchange info\n"); - return 1; + break; case 0x0004: /* request room info */ printf("faim: chatnav_parse_info: response to room info\n"); - return 1; + break; case 0x0005: /* request more room info */ printf("faim: chatnav_parse_info: response to more room info\n"); - return 1; + break; case 0x0006: /* request occupant list */ printf("faim: chatnav_parse_info: response to occupant info\n"); - return 1; + break; case 0x0007: /* search for a room */ printf("faim: chatnav_parse_info: search results\n"); - return 1; + break; case 0x0008: /* create room */ printf("faim: chatnav_parse_info: response to create room\n"); - return 1; + break; default: /* unknown */ printf("faim: chatnav_parse_info: unknown request subtype (%04x)\n", snac->type); } - return 1; /* shouldn't get here */ + if (snac && snac->data) + free(snac->data); + if (snac) + free(snac); + + return ret; } u_long aim_chatnav_createroom(struct aim_session_t *sess,