diff options
author | Alexander Early <alexander.early@gmail.com> | 2018-04-14 20:10:29 -0700 |
---|---|---|
committer | Alexander Early <alexander.early@gmail.com> | 2018-04-14 20:10:29 -0700 |
commit | 45e2938cfa536fe27898c60a4e0fe37080c880bb (patch) | |
tree | c0cb0776b596908d1a79f77c1a30a138dcba6a00 /lib/internal/eachOfLimit.js | |
parent | 2030f5f1bd01a141ac4c85d3deab927f49e255fc (diff) | |
parent | 3235c8f5f67ff38b85ce6f9664053d0b1897ff3b (diff) | |
download | async-DELETE_THIS_BRANCH.tar.gz |
Merge branch 'master' into DELETE_THIS_BRANCHDELETE_THIS_BRANCH
Diffstat (limited to 'lib/internal/eachOfLimit.js')
-rw-r--r-- | lib/internal/eachOfLimit.js | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/internal/eachOfLimit.js b/lib/internal/eachOfLimit.js index 487ec3f..7abad94 100644 --- a/lib/internal/eachOfLimit.js +++ b/lib/internal/eachOfLimit.js @@ -15,6 +15,7 @@ export default function _eachOfLimit(limit) { var nextElem = iterator(obj); var done = false; var running = 0; + var looping = false; function iterateeCallback(err, value) { running -= 1; @@ -26,12 +27,13 @@ export default function _eachOfLimit(limit) { done = true; return callback(null); } - else { + else if (!looping) { replenish(); } } function replenish () { + looping = true; while (running < limit && !done) { var elem = nextElem(); if (elem === null) { @@ -44,6 +46,7 @@ export default function _eachOfLimit(limit) { running += 1; iteratee(elem.value, elem.key, onlyOnce(iterateeCallback)); } + looping = false; } replenish(); |