irc: send QUIT to server and no PART for channels when the server buffer is closed (closes #294)
This commit is contained in:
parent
0d60871ec6
commit
99d20e97c6
@ -22,6 +22,8 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
|
|||||||
|
|
||||||
=== Bugs fixed
|
=== Bugs fixed
|
||||||
|
|
||||||
|
* irc: send QUIT to server and no PART for channels when the server buffer
|
||||||
|
is closed (closes #294)
|
||||||
* irc: fix order of channel buffers opened when option irc.look.server_buffer
|
* irc: fix order of channel buffers opened when option irc.look.server_buffer
|
||||||
is set to "independent", irc.look.buffer_open_before_autojoin to "on" and
|
is set to "independent", irc.look.buffer_open_before_autojoin to "on" and
|
||||||
irc.look.new_channel_position to "near_server" (closes #303)
|
irc.look.new_channel_position to "near_server" (closes #303)
|
||||||
|
@ -141,16 +141,20 @@ irc_buffer_close_cb (void *data, struct t_gui_buffer *buffer)
|
|||||||
{
|
{
|
||||||
if (ptr_server)
|
if (ptr_server)
|
||||||
{
|
{
|
||||||
/* send PART on all channels for server, then disconnect from server */
|
if (!ptr_server->disconnected)
|
||||||
|
{
|
||||||
|
/* send QUIT to server, then disconnect */
|
||||||
|
irc_command_quit_server (ptr_server, NULL);
|
||||||
|
irc_server_disconnect (ptr_server, 0, 0);
|
||||||
|
}
|
||||||
ptr_channel = ptr_server->channels;
|
ptr_channel = ptr_server->channels;
|
||||||
while (ptr_channel)
|
while (ptr_channel)
|
||||||
{
|
{
|
||||||
next_channel = ptr_channel->next_channel;
|
next_channel = ptr_channel->next_channel;
|
||||||
weechat_buffer_close (ptr_channel->buffer);
|
if (ptr_channel->buffer != buffer)
|
||||||
|
weechat_buffer_close (ptr_channel->buffer);
|
||||||
ptr_channel = next_channel;
|
ptr_channel = next_channel;
|
||||||
}
|
}
|
||||||
if (!ptr_server->disconnected)
|
|
||||||
irc_server_disconnect (ptr_server, 0, 0);
|
|
||||||
ptr_server->buffer = NULL;
|
ptr_server->buffer = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user