From bb151f7aad467bf29c6e5ca552088f7f0b8ec876 Mon Sep 17 00:00:00 2001 From: Wilmer van der Gaast Date: Sat, 20 Nov 2010 20:25:44 +0000 Subject: Added irc_channel_with_user() function to find a suitable channel to show a user's message in, instead of just &bitlbee by default. --- irc_im.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'irc_im.c') diff --git a/irc_im.c b/irc_im.c index 73ad697a..4e847d35 100644 --- a/irc_im.c +++ b/irc_im.c @@ -54,6 +54,11 @@ static gboolean bee_irc_user_new( bee_t *bee, bee_user_t *bu ) bu->ui_data = iu = irc_user_new( irc, nick ); iu->bu = bu; + if( set_getbool( &irc->b->set, "private" ) ) + iu->last_channel = NULL; + else + iu->last_channel = irc_channel_with_user( irc, iu ); + if( ( s = strchr( bu->handle, '@' ) ) ) { iu->host = g_strdup( s + 1 ); @@ -209,8 +214,8 @@ static gboolean bee_irc_user_msg( bee_t *bee, bee_user_t *bu, const char *msg_, { if( iu->last_channel->flags & IRC_CHANNEL_JOINED ) ic = iu->last_channel; - else if( irc->default_channel->flags & IRC_CHANNEL_JOINED ) - ic = irc->default_channel; + else + ic = irc_channel_with_user( irc, iu ); } if( ic ) -- cgit v1.2.3