X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=blobdiff_plain;f=lib%2Fsilcclient%2Fidlist.c;h=45b91af63be83cc43f66f30693201022a5effa1d;hp=f5686a7214c9ebacaf09a75326ea321b2b37269c;hb=c198279bceee270adb93075ff81b99ff2619b530;hpb=7f771866f95a5bf99b298fd79933779bc037da9c diff --git a/lib/silcclient/idlist.c b/lib/silcclient/idlist.c index f5686a72..45b91af6 100644 --- a/lib/silcclient/idlist.c +++ b/lib/silcclient/idlist.c @@ -216,8 +216,10 @@ SILC_CLIENT_CMD_FUNC(get_clients_list_callback) SILC_GET16_MSB(idp_len, client_id_list->data + 2); idp_len += 4; client_id = silc_id_payload_parse_id(client_id_list->data, idp_len); - if (!client_id) + if (!client_id) { + silc_buffer_pull(client_id_list, idp_len); continue; + } /* Get the client entry */ if (silc_idcache_find_by_id_one_ext(i->conn->client_cache, @@ -295,8 +297,10 @@ void silc_client_get_clients_by_list(SilcClient client, SILC_GET16_MSB(idp_len, client_id_list->data + 2); idp_len += 4; client_id = silc_id_payload_parse_id(client_id_list->data, idp_len); - if (!client_id) + if (!client_id) { + silc_buffer_pull(client_id_list, idp_len); continue; + } /* Check if we have this client cached already. */ id_cache = NULL;