'a'
mh-two-thousand-and-two
2024-04-12 44d2c92345cd156a59fc327b3060292a282d2893
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var noop = require('./noop');
var each = require('./each');
var nextTick = require('./nextTick');
exports = function(tasks, cb) {
    cb = cb || noop;
    var results = [];
    var pending = tasks.length;
    if (!pending) return done(null);
    each(tasks, function(task, i) {
        task(function(err, result) {
            taskCb(i, err, result);
        });
    });
    function taskCb(i, err, result) {
        results[i] = result;
        if (--pending === 0 || err) done(err);
    }
    function done(err) {
        nextTick(function() {
            cb(err, results);
            cb = noop;
        });
    }
};
 
module.exports = exports;