From 8adc6002e419504c050cb502fb1671ddeb1a354a Mon Sep 17 00:00:00 2001 From: Pekka Riikonen Date: Thu, 16 May 2002 11:59:51 +0000 Subject: [PATCH] updates. --- CHANGES | 4 ++++ apps/silcd/idlist.c | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index e57f70b0..502105a6 100644 --- a/CHANGES +++ b/CHANGES @@ -7,6 +7,10 @@ Thu May 16 13:05:13 CEST 2002 Pekka Riikonen is KILLED, SERVER_SIGNOFF or SIGNOFF. Affected file is lib/silcclient/client_notify.c. + * Check the watcher list before and after changing nickname + when the NICK_CHANGE notify is received. Affected file is + silcd/idlist.c. + Wed May 15 19:01:42 EEST 2002 Pekka Riikonen * Merged with Irssi CVS for Irssi SILC client. diff --git a/apps/silcd/idlist.c b/apps/silcd/idlist.c index 9503742f..d442718c 100644 --- a/apps/silcd/idlist.c +++ b/apps/silcd/idlist.c @@ -526,7 +526,7 @@ silc_idlist_replace_client_id(SilcServer server, if (!silc_idcache_del_by_context(id_list->clients, client)) return NULL; - /* Check if anyone is watching this nickname */ + /* Check if anyone is watching old nickname */ if (server->server_type == SILC_ROUTER) silc_server_check_watcher_list(server, client, nickname, SILC_NOTIFY_TYPE_NICK_CHANGE); @@ -536,6 +536,11 @@ silc_idlist_replace_client_id(SilcServer server, client->id = new_id; client->nickname = nickname ? strdup(nickname) : NULL; + /* Check if anyone is watching new nickname */ + if (server->server_type == SILC_ROUTER) + silc_server_check_watcher_list(server, client, nickname, + SILC_NOTIFY_TYPE_NICK_CHANGE); + if (!silc_idcache_add(id_list->clients, client->nickname, client->id, client, 0, NULL)) return NULL; -- 2.24.0