diff --git a/degesch.c b/degesch.c index 8b0269b..563da0f 100644 --- a/degesch.c +++ b/degesch.c @@ -6570,7 +6570,9 @@ irc_process_cap_ls (struct server *s) // XXX: with IRCv3.2, this may end up being too long for one message, // and we need to be careful with CAP END. One probably has to count // the number of sent CAP REQ vs the number of received CAP ACK/NAK. - irc_send (s, "CAP REQ :%s", chosen_str); + if (s->state == IRC_CONNECTED) + irc_send (s, "CAP REQ :%s", chosen_str); + free (chosen_str); }