summary refs log tree commit diff stats
path: root/src/common
diff options
context:
space:
mode:
authorSadie Powell <sadie@witchery.services>2022-11-02 14:35:23 +0000
committerPatrick <tingping@tingping.se>2022-11-05 12:42:51 -0500
commitbb7a03e9f68a775ca93dd6ad8ea61e4f1d2ba81b (patch)
tree856e53816b98227ee98944080a20ba06f5868213 /src/common
parent9d175cc4594d6ccf12b463ab49ec158e9f06036c (diff)
Fix updating the topic (user@host) of dialogs on CHGHOST.
This is updated when a user receives a new message but would have
not been updated when a user sent a CHGHOST.
Diffstat (limited to 'src/common')
-rw-r--r--src/common/inbound.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/common/inbound.c b/src/common/inbound.c
index d4b5a32e..a591dc48 100644
--- a/src/common/inbound.c
+++ b/src/common/inbound.c
@@ -1474,10 +1474,17 @@ inbound_user_info (session *sess, char *chan, char *user, char *host,
 		for (list = sess_list; list; list = list->next)
 		{
 			sess = list->data;
-			if (sess->type == SESS_CHANNEL && sess->server == serv)
+			if (sess->server != serv)
+				continue;
+
+			if (sess->type == SESS_CHANNEL)
 			{
 				userlist_add_hostname (sess, nick, uhost, realname, servname, account, away);
 			}
+			else if (sess->type == SESS_DIALOG && uhost && !serv->p_cmp (sess->channel, nick))
+			{
+				set_topic (sess, uhost, uhost);
+			}
 		}
 	}