Merged Irssi 0.8.2 from irssi.org cvs.
[silc.git] / apps / irssi / src / fe-common / core / fe-channels.c
index 64c5214c74d77f7b5447f51153647151c47e80a3..01b8aced0781f368e5691d0531d9f63b929a426b 100644 (file)
@@ -585,7 +585,12 @@ 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);
+        chanrec->left = TRUE;
+       channel_destroy(chanrec);
 
        server->channels_join(server, joindata, FALSE);
        g_free(joindata);