X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=apps%2Firssi%2Fsrc%2Fsilc%2Fcore%2Fsilc-servers.c;h=455aeed30d6426813eef96d0337536714f9268f0;hb=b0c4e67ab5c5047716f1794473a8e2d54a9f4ad9;hp=6f58b5a0ceed6c07bba09278e4f1d47e6daa4459;hpb=d3342e968cc12587121b96d83fb4fda83f1a181f;p=crypto.git diff --git a/apps/irssi/src/silc/core/silc-servers.c b/apps/irssi/src/silc/core/silc-servers.c index 6f58b5a0..455aeed3 100644 --- a/apps/irssi/src/silc/core/silc-servers.c +++ b/apps/irssi/src/silc/core/silc-servers.c @@ -1,7 +1,7 @@ /* silc-server.c : irssi - Copyright (C) 2000 - 2006 Timo Sirainen + Copyright (C) 2000 - 2007 Timo Sirainen Pekka Riikonen This program is free software; you can redistribute it and/or modify @@ -461,17 +461,18 @@ static void sig_disconnected(SILC_SERVER_REC *server) silc_dlist_uninit(server->ftp_sessions); if (server->conn) { + /* Close connection */ silc_client_close_connection(silc_client, server->conn); - - /* SILC closes the handle */ - g_io_channel_unref(net_sendbuffer_handle(server->handle)); - net_sendbuffer_destroy(server->handle, FALSE); - server->handle = NULL; } else if (server->op) { /* Abort on going connecting (key exchange) */ silc_async_abort(server->op, NULL, NULL); server->op = NULL; } + + /* SILC closes the handle */ + g_io_channel_unref(net_sendbuffer_handle(server->handle)); + net_sendbuffer_destroy(server->handle, FALSE); + server->handle = NULL; } SERVER_REC *silc_server_init_connect(SERVER_CONNECT_REC *conn)