updates.
[silc.git] / lib / silcclient / client.c
index b05f81b680c3a887c39a947407525b3c9829e57c..59945b6ece412ab3f45141dfd179852ed4724552 100644 (file)
@@ -1340,6 +1340,9 @@ void silc_client_close_connection_real(SilcClient client,
 
   SILC_LOG_DEBUG(("Start"));
 
+  if (!sock && !conn)
+    return;
+
   if (!sock || (sock && conn->sock == sock))
     del = TRUE;
   if (!sock)
@@ -1350,7 +1353,6 @@ void silc_client_close_connection_real(SilcClient client,
 
   /* Unregister all tasks */
   silc_schedule_task_del_by_fd(client->schedule, sock->sock);
-  silc_schedule_task_del_by_fd(client->schedule, sock->sock);
 
   /* Close the actual connection */
   silc_net_close_connection(sock->sock);