diff options
| -rw-r--r-- | src/kike.c | 5 | 
1 files changed, 3 insertions, 2 deletions
| @@ -681,9 +681,10 @@ client_unregister (struct client *c, const char *reason)  	struct str_map_iter iter;  	str_map_iter_init (&iter, &c->ctx->channels); -	struct channel *chan; -	while ((chan = str_map_iter_next (&iter))) +	struct channel *chan, *next = str_map_iter_next (&iter); +	for (chan = next; chan; chan = next)  	{ +		next = str_map_iter_next (&iter);  		struct channel_user *user;  		if (!(user = channel_get_user (chan, c)))  			continue; | 
