From: mid Date: Thu, 17 Aug 2000 23:17:04 +0000 (+0000) Subject: - Thu Aug 17 23:08:08 UTC 2000 X-Git-Tag: rel_0_99_2~130 X-Git-Url: http://andersk.mit.edu/gitweb/libfaim.git/commitdiff_plain/91c55d4735e6774eaa2616fb2e83150fabaf3899 - Thu Aug 17 23:08:08 UTC 2000 - More leak fixes (eric, eric, eric...) --- diff --git a/CHANGES b/CHANGES index 3d08a8e..ce712d5 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,9 @@ No release numbers ------------------ + - Thu Aug 17 23:08:08 UTC 2000 + - More leak fixes (eric, eric, eric...) + - Thu Aug 17 22:53:03 UTC 2000 - Change the SNAC cache to a hash instead of list - Fixed a few leaks relating to aim_gettlv_str() diff --git a/aim_chatnav.c b/aim_chatnav.c index 1bc8c33..2a0a478 100644 --- a/aim_chatnav.c +++ b/aim_chatnav.c @@ -215,7 +215,8 @@ int aim_chatnav_parse_info(struct aim_session_t *sess, struct command_rx_struct exchanges[curexchange-1].lang2 = aim_gettlv_str(innerlist, 0x00d9, 1); else exchanges[curexchange-1].lang2 = NULL; - + + aim_freetlvchain(&innerlist); } /* @@ -245,7 +246,6 @@ int aim_chatnav_parse_info(struct aim_session_t *sess, struct command_rx_struct curexchange--; } free(exchanges); - aim_freetlvchain(&innerlist); aim_freetlvchain(&tlvlist); return ret; } diff --git a/aim_login.c b/aim_login.c index 44ed08d..9adf21c 100644 --- a/aim_login.c +++ b/aim_login.c @@ -311,10 +311,12 @@ int aim_authparse(struct aim_session_t *sess, aim_freetlvchain(&tlvlist); - /* These have been clobbered by the freetlvchain */ - sess->logininfo.BOSIP = NULL; - sess->logininfo.email = NULL; - sess->logininfo.errorurl = NULL; + if (sess->logininfo.BOSIP) + free(sess->logininfo.BOSIP); + if (sess->logininfo.email) + free(sess->logininfo.email); + if (sess->logininfo.errorurl) + free(sess->logininfo.errorurl); return ret; } diff --git a/faim/aim.h b/faim/aim.h index 66b1ca0..a35af36 100644 --- a/faim/aim.h +++ b/faim/aim.h @@ -532,7 +532,7 @@ u_long aim_seticbmparam(struct aim_session_t *, struct aim_conn_t *conn); int aim_parse_msgerror_middle(struct aim_session_t *, struct command_rx_struct *); int aim_negchan_middle(struct aim_session_t *sess, struct command_rx_struct *command); -struct aim_conn_t * aim_directim_intiate(struct aim_session_t *, struct aim_conn_t *, struct aim_directim_priv *, char *); +struct aim_conn_t * aim_directim_initiate(struct aim_session_t *, struct aim_conn_t *, struct aim_directim_priv *, char *); int aim_send_im_direct(struct aim_session_t *, struct aim_conn_t *, char *); struct aim_conn_t *aim_directim_connect(struct aim_session_t *, struct aim_conn_t *, struct aim_directim_priv *);