aboutsummaryrefslogtreecommitdiffstats
path: root/irc_commands.c
diff options
context:
space:
mode:
Diffstat (limited to 'irc_commands.c')
-rw-r--r--irc_commands.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/irc_commands.c b/irc_commands.c
index e6954071..530e849b 100644
--- a/irc_commands.c
+++ b/irc_commands.c
@@ -139,6 +139,14 @@ static void irc_cmd_join( irc_t *irc, char **cmd )
return; /* Dude, you're already there...
RFC doesn't have any reply for that though? */
+ if( ic->f->join && !ic->f->join( ic ) )
+ /* The story is: FALSE either means the handler showed an error
+ message, or is doing some work before the join should be
+ confirmed. (In the latter case, the caller should take care
+ of that confirmation.)
+ TRUE means all's good, let the user join the channel right away. */
+ return;
+
irc_channel_add_user( ic, irc->user );
}