diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2008-08-31 15:54:39 +0100 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2008-08-31 15:54:39 +0100 | 
| commit | d995c9b5de1bff5e3eb5de47b7ffbd3e92e2ac3d (patch) | |
| tree | 8c630131f1851da9fbf3d20fffb771f13b8c2848 /account.c | |
| parent | 39f93f0ce1c0a179b51f5ff6474d57509e9e0d17 (diff) | |
Added cleanup code.
Diffstat (limited to 'account.c')
| -rw-r--r-- | account.c | 8 | 
1 files changed, 8 insertions, 0 deletions
| @@ -189,6 +189,7 @@ account_t *account_get( irc_t *irc, char *id )  void account_del( irc_t *irc, account_t *acc )  {  	account_t *a, *l = NULL; +	struct chat *c, *nc;  	if( acc->ic )  		/* Caller should have checked, accounts still in use can't be deleted. */ @@ -202,6 +203,13 @@ void account_del( irc_t *irc, account_t *acc )  			else  				irc->accounts = a->next; +			for( c = irc->chatrooms; c; c = nc ) +				if( acc == c->acc ) +				{ +					nc = c->next; +					chat_del( irc, c ); +				} +			  			while( a->set )  				set_del( &a->set, a->set->key ); | 
