X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcclient%2Fclient_entry.c;h=32f272ec189b8fdff80cd6593cd9e72c3675b58c;hb=f5a51141c5f33b6a816b36fe3adcedb53df818b9;hp=2a26931ae9cac71fafa5ec849a418cde2322a3f9;hpb=e56abacd801336a327d35dd903b854ac41af011b;p=silc.git diff --git a/lib/silcclient/client_entry.c b/lib/silcclient/client_entry.c index 2a26931a..32f272ec 100644 --- a/lib/silcclient/client_entry.c +++ b/lib/silcclient/client_entry.c @@ -85,13 +85,8 @@ SilcDList silc_client_get_clients_local_ext(SilcClient client, if (!silc_client_nickname_parse(client, conn, (char *)nick, &parsed)) return NULL; - if (!get_all && parsed) + if (!get_all) format = (char *)nick; - if (!parsed) { - parsed = silc_memdup(nick, strlen(nick)); - if (!parsed) - return NULL; - } SILC_LOG_DEBUG(("Find clients by nickname %s", parsed)); @@ -124,7 +119,7 @@ SilcDList silc_client_get_clients_local_ext(SilcClient client, } silc_list_start(list); - if (!format && get_all) { + if (get_all) { /* Take all without any further checking */ while ((id_cache = silc_list_get(list))) { entry = id_cache->context; @@ -1298,7 +1293,7 @@ SilcBool silc_client_nickname_parse(SilcClient client, int len; if (!client->internal->params->nickname_format[0]) { - *ret_nick = NULL; + *ret_nick = silc_strdup(nickname); return TRUE; } @@ -1720,6 +1715,7 @@ SilcBool silc_client_del_channel(SilcClient client, SilcClientConnection conn, return FALSE; silc_client_empty_channel(client, conn, channel); + silc_client_del_channel_private_keys(client, conn, channel); silc_hash_table_free(channel->user_list); silc_free(channel->channel_name); silc_free(channel->topic); @@ -1746,7 +1742,6 @@ SilcBool silc_client_del_channel(SilcClient client, SilcClientConnection conn, if (channel->channel_pubkeys) silc_argument_list_free(channel->channel_pubkeys, SILC_ARGUMENT_PUBLIC_KEY); - silc_client_del_channel_private_keys(client, conn, channel); silc_atomic_uninit16(&channel->internal.refcnt); silc_rwlock_free(channel->internal.lock); silc_schedule_task_del_by_context(conn->client->schedule, channel);