diff options
Diffstat (limited to 'html.c')
-rw-r--r-- | html.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/html.c b/html.c index 2f6be5f..aebb104 100644 --- a/html.c +++ b/html.c @@ -367,7 +367,10 @@ static enum kcgi_err eventNick(struct khtmlreq *html, const struct Event *event) { char *mask = NULL; char class[sizeof("fg99")]; - snprintf(class, sizeof(class), "fg%02d", hash(event->user)); + snprintf( + class, sizeof(class), "fg%02d", + hash(strcmp(event->user, "*") ? event->user : event->nick) + ); asprintf(&mask, "%s!%s@%s", event->nick, event->user, event->host); if (!mask) err(EX_OSERR, "asprintf"); const char *format = "%s"; @@ -427,7 +430,10 @@ eventMessage(struct khtmlreq *html, const struct Event *event) { break; case Nick: { if (!event->target) break; char class[sizeof("fg99")]; - snprintf(class, sizeof(class), "fg%02d", hash(event->user)); + snprintf( + class, sizeof(class), "fg%02d", + hash(strcmp(event->user, "*") ? event->user : event->target) + ); error = 0 || khtml_puts(html, "changed nick to ") || khtml_attr(html, KELEM_SPAN, KATTR_CLASS, class, KATTR__MAX) |