Skip to content

Commit 7e8a465

Browse files
Do not add channels with invalid options
Found by: fred0r Patch by: michaelortmann Fixes: eggheads#974
1 parent 3fe2417 commit 7e8a465

1 file changed

Lines changed: 9 additions & 6 deletions

File tree

src/mod/channels.mod/tclchan.c

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2211,12 +2211,15 @@ static int tcl_channel_add(Tcl_Interp *irp, char *newname, char *options)
22112211
ret = TCL_ERROR;
22122212
}
22132213
Tcl_Free((char *) item);
2214-
if (join && !channel_inactive(chan) && module_find("irc", 0, 0)) {
2215-
if (chan->key_prot[0])
2216-
dprintf(DP_SERVER, "JOIN %s %s\n", chan->dname, chan->key_prot);
2217-
else
2218-
dprintf(DP_SERVER, "JOIN %s\n", chan->dname);
2219-
}
2214+
if (ret == TCL_OK) {
2215+
if (join && !channel_inactive(chan) && module_find("irc", 0, 0)) {
2216+
if (chan->key_prot[0])
2217+
dprintf(DP_SERVER, "JOIN %s %s\n", chan->dname, chan->key_prot);
2218+
else
2219+
dprintf(DP_SERVER, "JOIN %s\n", chan->dname);
2220+
}
2221+
} else
2222+
remove_channel(chan);
22202223
return ret;
22212224
}
22222225

0 commit comments

Comments
 (0)