projects
/
silc.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixed founder mode chaning in JOIN and CUMODE_CHANGE notifys.
[silc.git]
/
lib
/
silcclient
/
client.c
diff --git
a/lib/silcclient/client.c
b/lib/silcclient/client.c
index 59945b6ece412ab3f45141dfd179852ed4724552..f389f60dd0cfbd78023d6cf91414878c72946591 100644
(file)
--- a/
lib/silcclient/client.c
+++ b/
lib/silcclient/client.c
@@
-1471,12
+1471,17
@@
void silc_client_close_connection(SilcClient client,
SILC_TASK_CALLBACK(silc_client_disconnected_by_server_later)
{
SilcClient client = (SilcClient)context;
SILC_TASK_CALLBACK(silc_client_disconnected_by_server_later)
{
SilcClient client = (SilcClient)context;
+ SilcClientConnection conn;
SilcSocketConnection sock;
SILC_CLIENT_GET_SOCK(client, fd, sock);
if (sock == NULL)
return;
SilcSocketConnection sock;
SILC_CLIENT_GET_SOCK(client, fd, sock);
if (sock == NULL)
return;
+ conn = (SilcClientConnection)sock->user_data;
+ if (sock == conn->sock && sock->type != SILC_SOCKET_TYPE_CLIENT)
+ client->internal->ops->disconnect(client, conn);
+
silc_client_close_connection_real(client, sock, sock->user_data);
}
silc_client_close_connection_real(client, sock, sock->user_data);
}