mirror of
https://github.com/irssi/irssi.git
synced 2024-12-04 14:46:39 -05:00
server_disconnect() should do nothing if you call it twice, especially it
shouldn't emit the "server disconnected" again. We'll now handle the remaining data coming from server after disconnection. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2290 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
f594121100
commit
a72f7244ff
@ -334,6 +334,9 @@ void server_disconnect(SERVER_REC *server)
|
||||
|
||||
g_return_if_fail(IS_SERVER(server));
|
||||
|
||||
if (server->disconnected)
|
||||
return;
|
||||
|
||||
if (server->connect_tag != -1) {
|
||||
/* still connecting to server.. */
|
||||
if (server->connect_pid != -1)
|
||||
|
@ -376,8 +376,7 @@ static void irc_parse_incoming(SERVER_REC *server)
|
||||
letting other tasks to run. */
|
||||
count = 0;
|
||||
server_ref(server);
|
||||
while (!server->disconnected &&
|
||||
irc_receive_line(server, &str, count < MAX_SOCKET_READS) > 0) {
|
||||
while (irc_receive_line(server, &str, count < MAX_SOCKET_READS) > 0) {
|
||||
rawlog_input(server->rawlog, str);
|
||||
signal_emit_id(signal_server_incoming, 2, server, str);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user