Fix user list not tracking mode changes

The `PREFIX` key in `ISUPPORT` (usually) takes the form
`(modes)prefixes` e.g. `(ov)@+`. The current implementation will
therefore set `serv->nick_modes` to a string like `"(ov"` instead
of the desired `"ov"`. This causes the nick list to not properly
update with which users have which prefix modes. Skip over the
initial `'('` so we capture the correct modes and fix that issue.
This commit is contained in:
Ryan Schmidt 2021-10-01 12:18:33 -07:00 committed by Patrick
parent 3f07670b34
commit dd6f53f504

View File

@ -880,7 +880,7 @@ inbound_005 (server * serv, char *word[], const message_tags_data *tags_data)
g_free (serv->nick_prefixes);
g_free (serv->nick_modes);
serv->nick_prefixes = g_strdup (pre + 1);
serv->nick_modes = g_strdup (tokvalue);
serv->nick_modes = g_strdup (tokvalue + 1);
} else
{
/* bad! some ircds don't give us the modes. */