From: Pekka Riikonen Date: Thu, 14 Feb 2002 15:03:32 +0000 (+0000) Subject: updates X-Git-Tag: silc.client.0.8.1~65 X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=commitdiff_plain;h=70b2a4866e58a45bc339f9fbb5622b9ffd71a0d4 updates --- diff --git a/CHANGES b/CHANGES index b42eb884..3a5df357 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,9 @@ +Thu Feb 14 16:02:26 CET 2002 Pekka Riikonen + + * Add the client on channel after it was resolved at the + channel message receiving, and it was not already on the + channel. Affected file lib/silcclient/client_channel.c. + Wed Feb 13 23:16:41 EET 2002 Pekka Riikonen * Fixed the public key authentication to allocate always the diff --git a/lib/silcclient/client_channel.c b/lib/silcclient/client_channel.c index 0ac903df..4f89d727 100644 --- a/lib/silcclient/client_channel.c +++ b/lib/silcclient/client_channel.c @@ -177,6 +177,16 @@ static void silc_client_channel_message_cb(SilcClient client, if (!channel) goto out; + /* If this client is not on channel, add it there since it clearly + is there. */ + if (!silc_client_on_channel(channel, clients[0])) { + SilcChannelUser chu = silc_calloc(1, sizeof(*chu)); + chu->client = clients[0]; + chu->channel = channel; + silc_hash_table_add(channel->user_list, clients[0], chu); + silc_hash_table_add(clients[0]->channels, channel, chu); + } + message = silc_channel_message_get_data(res->payload, NULL); /* Pass the message to application */