diff options
author | Wilmer van der Gaast <wilmer@gaast.net> | 2010-06-08 23:44:16 +0100 |
---|---|---|
committer | Wilmer van der Gaast <wilmer@gaast.net> | 2010-06-08 23:44:16 +0100 |
commit | d7db3468f95d6b8ed2a161c71cb5b6ab1a7b5895 (patch) | |
tree | 17c6592e30e96cf19c7087df063bcbec5f9ad879 /irc_channel.c | |
parent | d50e22f72987597152198811a22e50a97a902bcc (diff) |
Some cleanup improvements.
Diffstat (limited to 'irc_channel.c')
-rw-r--r-- | irc_channel.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/irc_channel.c b/irc_channel.c index d98d0652..c676afe6 100644 --- a/irc_channel.c +++ b/irc_channel.c @@ -119,6 +119,12 @@ int irc_channel_free( irc_channel_t *ic ) if( ic->flags & IRC_CHANNEL_JOINED ) irc_channel_del_user( ic, irc->user, FALSE, "Cleaning up channel" ); + if( ic->f->_free ) + ic->f->_free( ic ); + + while( ic->set ) + set_del( &ic->set, ic->set->key ); + irc->channels = g_slist_remove( irc->channels, ic ); while( ic->users ) { @@ -128,6 +134,7 @@ int irc_channel_free( irc_channel_t *ic ) g_free( ic->name ); g_free( ic->topic ); + g_free( ic->topic_who ); g_free( ic ); return 1; |