Browse Source

Deal with ~users in colorGen

master
Causal Agent 3 months ago
parent
commit
6223c9c8f8
Signed by: Curtis McEnroe <june@causal.agency> GPG Key ID: CEA2F97ADCFCD77C
2 changed files with 5 additions and 5 deletions
  1. 3
    2
      color.c
  2. 2
    3
      handle.c

+ 3
- 2
color.c View File

@@ -29,8 +29,9 @@ static uint32_t hashChar(uint32_t hash, char ch) {
enum IRCColor colorGen(const char *str) {
if (!str) return IRCDefault;
uint32_t hash = 0;
for (; str[0]; ++str) {
hash = hashChar(hash, str[0]);
if (*str == '~') str++;
for (; *str; ++str) {
hash = hashChar(hash, *str);
}
while (IRCBlack == (hash & IRCLightGray)) {
hash = hashChar(hash, '\0');

+ 2
- 3
handle.c View File

@@ -43,7 +43,7 @@ static void parse(
field = strsep(&prefix, "!");
if (nick) *nick = field;
field = strsep(&prefix, "@");
if (user) *user = (field && field[0] == '~' ? &field[1] : field);
if (user) *user = field;
if (host) *host = prefix;
}

@@ -164,7 +164,7 @@ static void handleReplyWhoisUser(char *prefix, char *params) {
prefix, NULL, NULL, NULL,
params, 6, 0, NULL, &nick, &user, &host, NULL, &real
);
whoisColor = colorGen(user[0] == '~' ? &user[1] : user);
whoisColor = colorGen(user);
uiFmt(
TagStatus, UIWarm,
"\3%d%s\3 is %s@%s, \"%s\"",
@@ -372,7 +372,6 @@ static void handleReplyWho(char *prefix, char *params) {
prefix, NULL, NULL, NULL,
params, 6, 0, NULL, &chan, &user, NULL, NULL, &nick
);
if (user[0] == '~') user = &user[1];
struct Tag tag = colorTag(tagFor(chan), chan);

tabAdd(tag, nick);

Loading…
Cancel
Save