diff --git a/src/fe-common/irc/fe-channels.c b/src/fe-common/irc/fe-channels.c index 9a87bd79..64b07fa7 100644 --- a/src/fe-common/irc/fe-channels.c +++ b/src/fe-common/irc/fe-channels.c @@ -60,7 +60,8 @@ static void signal_channel_destroyed(CHANNEL_REC *channel) if (window != NULL) { window_remove_item(window, (WI_ITEM_REC *) channel); - if (windows->next != NULL && (!channel->joined || channel->left) && + if (window->items == NULL && windows->next != NULL && + (!channel->joined || channel->left) && settings_get_bool("autoclose_windows")) { window_destroy(window); } diff --git a/src/fe-common/irc/fe-query.c b/src/fe-common/irc/fe-query.c index a7643d55..ee1505bd 100644 --- a/src/fe-common/irc/fe-query.c +++ b/src/fe-common/irc/fe-query.c @@ -74,8 +74,8 @@ static void signal_query_destroyed(QUERY_REC *query) if (window != NULL) { window_remove_item(window, (WI_ITEM_REC *) query); - if (windows->next != NULL && !query->unwanted && - settings_get_bool("autoclose_windows")) + if (window->items == NULL && windows->next != NULL && + !query->unwanted && settings_get_bool("autoclose_windows")) window_destroy(window); } }