diff options
Diffstat (limited to 'irc_commands.c')
| -rw-r--r-- | irc_commands.c | 8 | 
1 files changed, 8 insertions, 0 deletions
| diff --git a/irc_commands.c b/irc_commands.c index 9730a288..def323a4 100644 --- a/irc_commands.c +++ b/irc_commands.c @@ -301,11 +301,19 @@ static void irc_cmd_who( irc_t *irc, char **cmd )  {  	char *channel = cmd[1];  	irc_channel_t *ic; +	irc_user_t *iu;  	if( !channel || *channel == '0' || *channel == '*' || !*channel )  		irc_send_who( irc, irc->users, "**" );  	else if( ( ic = irc_channel_by_name( irc, channel ) ) )  		irc_send_who( irc, ic->users, channel ); +	else if( ( iu = irc_user_by_name( irc, channel ) ) ) +	{ +		/* Tiny hack! */ +		GSList *l = g_slist_append( NULL, iu ); +		irc_send_who( irc, l, channel ); +		g_slist_free( l ); +	}  	else  		irc_send_num( irc, 403, "%s :No such channel", channel );  } | 
