summaryrefslogtreecommitdiff
path: root/src/fe-common/irc/fe-ircnet.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/fe-common/irc/fe-ircnet.c')
-rw-r--r--src/fe-common/irc/fe-ircnet.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/fe-common/irc/fe-ircnet.c b/src/fe-common/irc/fe-ircnet.c
index bb0af313..1760b966 100644
--- a/src/fe-common/irc/fe-ircnet.c
+++ b/src/fe-common/irc/fe-ircnet.c
@@ -176,6 +176,8 @@ static void cmd_network_add(const char *data)
static void cmd_network_remove(const char *data)
{
IRC_CHATNET_REC *rec;
+ GSList *servers;
+ GSList *tmp;
if (*data == '\0') cmd_return_error(CMDERR_NOT_ENOUGH_PARAMS);
@@ -183,6 +185,10 @@ static void cmd_network_remove(const char *data)
if (rec == NULL)
printformat(NULL, NULL, MSGLEVEL_CLIENTNOTICE, IRCTXT_NETWORK_NOT_FOUND, data);
else {
+ servers = server_setup_find_chatnet(data);
+
+ for (tmp = servers; tmp != NULL; tmp = tmp->next)
+ server_setup_remove((SERVER_SETUP_REC *) tmp->data);
printformat(NULL, NULL, MSGLEVEL_CLIENTNOTICE, IRCTXT_NETWORK_REMOVED, data);
chatnet_remove(CHATNET(rec));
}