aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--irc_send.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/irc_send.c b/irc_send.c
index 4511d667..adf8211e 100644
--- a/irc_send.c
+++ b/irc_send.c
@@ -347,8 +347,13 @@ void irc_send_who(irc_t *irc, GSList *l, const char *channel)
iu = l->data;
}
- /* rfc1459 doesn't mention this: G means gone, H means here */
- status_prefix[0] = iu->flags & IRC_USER_AWAY ? 'G' : 'H';
+ /* If this is the account nick, check configuration to see if away */
+ if (iu == irc->user) {
+ /* rfc1459 doesn't mention this: G means gone, H means here */
+ status_prefix[0] = set_getstr(&irc->b->set, "away") ? 'G' : 'H';
+ } else {
+ status_prefix[0] = iu->flags & IRC_USER_AWAY ? 'G' : 'H';
+ }
irc_send_num(irc, 352, "%s %s %s %s %s %s :0 %s",
is_channel ? channel : "*", iu->user, iu->host, irc->root->host,