summaryrefslogtreecommitdiff
path: root/src/fe-common/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/fe-common/core')
-rw-r--r--src/fe-common/core/fe-channels.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/fe-common/core/fe-channels.c b/src/fe-common/core/fe-channels.c
index 64c5214c..bfd8e800 100644
--- a/src/fe-common/core/fe-channels.c
+++ b/src/fe-common/core/fe-channels.c
@@ -585,7 +585,11 @@ static void cmd_cycle(const char *data, SERVER_REC *server, WI_ITEM_REC *item)
joindata = chanrec->get_join_data(chanrec);
window_bind_add(window_item_window(chanrec),
chanrec->server->tag, chanrec->name);
- channel_destroy(chanrec);
+
+ /* FIXME: kludgy kludgy... and it relies on channel not
+ being destroyed immediately.. */
+ signal_emit("command part", 3, data, server, item);
+ channel_destroy(chanrec);
server->channels_join(server, joindata, FALSE);
g_free(joindata);