put eachseries in process.nextTick

This commit is contained in:
reality 2013-07-26 17:01:22 +00:00
parent ac8783dbd6
commit dfaa795b8f

View File

@ -196,23 +196,25 @@ var users = function(dbot) {
dbot.instance.addListener('366', 'users', function(event) { dbot.instance.addListener('366', 'users', function(event) {
var checkChannel = function(channel) { var checkChannel = function(channel) {
async.eachSeries(_.keys(event.channel.nicks), function(nick, next) { async.eachSeries(_.keys(event.channel.nicks), function(nick, next) {
var staff = event.channel.nicks[nick]; process.nextTick(function() {
var staff = event.channel.nicks[nick];
this.api.resolveUser(event.server, nick, function(user) {
var checkChannelUser = function(user) { this.api.resolveUser(event.server, nick, function(user) {
if(!_.include(channel.users, user.id)) { var checkChannelUser = function(user) {
this.internalAPI.addChannelUser(channel, user, staff, next); if(!_.include(channel.users, user.id)) {
} else { this.internalAPI.addChannelUser(channel, user, staff, next);
this.internalAPI.modChannelStaff(channel, user, staff, next); } else {
} this.internalAPI.modChannelStaff(channel, user, staff, next);
}.bind(this); }
}.bind(this);
if(user) { if(user) {
checkChannelUser(user); checkChannelUser(user);
} else { } else {
this.internalAPI.createUser(event.server, nick, checkChannelUser); this.internalAPI.createUser(event.server, nick, checkChannelUser);
} }
}.bind(this)); }.bind(this));
});
}.bind(this), function(err) { }.bind(this), function(err) {
console.log('finished checking ' + channel); console.log('finished checking ' + channel);
}); });