Merge branch 'master' into wdk

This commit is contained in:
Berke Viktor 2012-06-02 04:34:03 +02:00
commit e17c390d57
1 changed files with 13 additions and 1 deletions

View File

@ -1028,6 +1028,8 @@ check_autojoin_channels (server *serv)
/* this is really only for re-connects when you /* this is really only for re-connects when you
* join channels not in the auto-join list. */ * join channels not in the auto-join list. */
channels = NULL;
keys = NULL;
while (list) while (list)
{ {
sess = list->data; sess = list->data;
@ -1037,18 +1039,28 @@ check_autojoin_channels (server *serv)
{ {
strcpy (sess->waitchannel, sess->willjoinchannel); strcpy (sess->waitchannel, sess->willjoinchannel);
sess->willjoinchannel[0] = 0; sess->willjoinchannel[0] = 0;
serv->p_join (serv, sess->waitchannel, sess->channelkey);
po = strchr (sess->waitchannel, ','); po = strchr (sess->waitchannel, ',');
if (po) if (po)
*po = 0; *po = 0;
po = strchr (sess->waitchannel, ' '); po = strchr (sess->waitchannel, ' ');
if (po) if (po)
*po = 0; *po = 0;
channels = g_slist_append (channels, g_strdup (sess->waitchannel));
keys = g_slist_append (keys, g_strdup (sess->channelkey));
i++; i++;
} }
} }
list = list->next; list = list->next;
} }
if (channels)
{
serv->p_join_list (serv, channels, keys);
joinlist_free (channels, keys);
}
serv->joindelay_tag = 0; serv->joindelay_tag = 0;
fe_server_event (serv, FE_SE_LOGGEDIN, i); fe_server_event (serv, FE_SE_LOGGEDIN, i);
return FALSE; return FALSE;