aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--irc.c3
-rw-r--r--root_commands.c8
2 files changed, 9 insertions, 2 deletions
diff --git a/irc.c b/irc.c
index d599fdf8..ed2363ae 100644
--- a/irc.c
+++ b/irc.c
@@ -111,9 +111,8 @@ irc_t *irc_new( int fd )
s = set_add( &b->set, "display_namechanges", "false", set_eval_bool, irc );
s = set_add( &b->set, "display_timestamps", "true", set_eval_bool, irc );
s = set_add( &b->set, "handle_unknown", "add_channel", NULL, irc );
- s = set_add( &b->set, "last_version", NULL, NULL, irc );
+ s = set_add( &b->set, "last_version", "0", NULL, irc );
s->flags |= SET_HIDDEN;
- s->value = g_strdup_printf( "%d", BITLBEE_VERSION_CODE );
s = set_add( &b->set, "lcnicks", "true", set_eval_bool, irc );
s = set_add( &b->set, "nick_format", "%-@nick", NULL, irc );
s = set_add( &b->set, "offline_user_quits", "true", set_eval_bool, irc );
diff --git a/root_commands.c b/root_commands.c
index 98105832..81e33076 100644
--- a/root_commands.c
+++ b/root_commands.c
@@ -205,6 +205,8 @@ gboolean cmd_identify_finish( gpointer data, gint fd, b_input_condition cond )
static void cmd_register( irc_t *irc, char **cmd )
{
+ char s[16];
+
if( global.conf->authmode == AUTHMODE_REGISTERED )
{
irc_usermsg( irc, "This server does not allow registering new accounts" );
@@ -221,6 +223,12 @@ static void cmd_register( irc_t *irc, char **cmd )
irc_setpass( irc, cmd[1] );
irc->status |= USTATUS_IDENTIFIED;
irc_umode_set( irc, "+R", 1 );
+
+ /* Set this var now, or anyone who logs in to his/her
+ newly created account for the first time gets the
+ whatsnew story. */
+ g_snprintf( s, sizeof( s ), "%d", BITLBEE_VERSION_CODE );
+ set_setstr( &irc->b->set, "last_version", s );
break;
default: