X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcclient%2Fclient_entry.c;h=1d3189ba04f89791e06dfef82c9aeba0ed6f02f6;hb=77336860c5d419c9d25a6366de0269c0edb38889;hp=980daea66746322437b3119d7f1fcd7026a99e7a;hpb=5e8e3a77c70f10a29e78aa645366c84564b8bc7d;p=silc.git diff --git a/lib/silcclient/client_entry.c b/lib/silcclient/client_entry.c index 980daea6..1d3189ba 100644 --- a/lib/silcclient/client_entry.c +++ b/lib/silcclient/client_entry.c @@ -750,7 +750,7 @@ SilcClientEntry silc_client_add_client(SilcClient client, silc_mutex_unlock(conn->internal->lock); silc_client_ref_client(client, conn, client_entry); - SILC_LOG_DEBUG(("Added")); + SILC_LOG_DEBUG(("Added %p", client_entry)); return client_entry; } @@ -1324,7 +1324,7 @@ SilcChannelEntry silc_client_add_channel(SilcClient client, silc_mutex_unlock(conn->internal->lock); silc_client_ref_channel(client, conn, channel); - SILC_LOG_DEBUG(("Added")); + SILC_LOG_DEBUG(("Added %p", channel)); return channel; } @@ -1702,7 +1702,7 @@ SilcServerEntry silc_client_add_server(SilcClient client, silc_mutex_unlock(conn->internal->lock); silc_client_ref_server(client, conn, server_entry); - SILC_LOG_DEBUG(("Added")); + SILC_LOG_DEBUG(("Added %p", server_entry)); return server_entry; } @@ -1784,6 +1784,9 @@ void silc_client_ref_server(SilcClient client, SilcClientConnection conn, SilcServerEntry server_entry) { silc_atomic_add_int8(&server_entry->internal.refcnt, 1); + SILC_LOG_DEBUG(("Server %p refcnt %d->%d", server_entry, + silc_atomic_get_int8(&server_entry->internal.refcnt) - 1, + silc_atomic_get_int8(&server_entry->internal.refcnt))); } /* Release reference of server entry */ @@ -1791,7 +1794,13 @@ void silc_client_ref_server(SilcClient client, SilcClientConnection conn, void silc_client_unref_server(SilcClient client, SilcClientConnection conn, SilcServerEntry server_entry) { - silc_client_del_server(client, conn, server_entry); + if (server_entry) { + SILC_LOG_DEBUG(("Server %p refcnt %d->%d", server_entry, + silc_atomic_get_int8(&server_entry->internal.refcnt), + silc_atomic_get_int8(&server_entry->internal.refcnt) + - 1)); + silc_client_del_server(client, conn, server_entry); + } } /* Free server entry list */