X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilcclient%2Fcommand_reply.c;h=80e85186e2b5988dedfe1368889eb4a6b96fa791;hb=2899e1a5409cea132653cd67d4e33e9313872e95;hp=cf4e151bbff63356ebd77a56c6983638adb67417;hpb=bfd23992de9af6392c1a8f8d9b4afd5b353e852c;p=silc.git diff --git a/lib/silcclient/command_reply.c b/lib/silcclient/command_reply.c index cf4e151b..80e85186 100644 --- a/lib/silcclient/command_reply.c +++ b/lib/silcclient/command_reply.c @@ -1217,7 +1217,7 @@ SILC_FSM_STATE(silc_client_command_reply_join) /* Get client entry */ client_entry = silc_client_get_client_by_id(client, conn, &id.u.client_id); - if (!client_entry) + if (!client_entry || !client_entry->internal.valid) continue; /* Join client to the channel */ @@ -1921,7 +1921,7 @@ SILC_FSM_STATE(silc_client_command_reply_users) /* Save the client on this channel. Unknown clients are ignored as they clearly do not exist since the resolving didn't find them. */ client_entry = silc_client_get_client_by_id(client, conn, &id.u.client_id); - if (client_entry) { + if (client_entry && client_entry->internal.valid) { silc_rwlock_wrlock(client_entry->internal.lock); silc_client_add_to_channel(client, conn, channel, client_entry, mode); silc_rwlock_unlock(client_entry->internal.lock);