From 99aa42ec4f817a6a92b79a3058c050c9c2e837a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mae=CC=88l=20Nison?= Date: Mon, 6 Jan 2020 21:40:24 +0100 Subject: [PATCH] fixup: reverts non-necessary changes --- lib/async.js | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/lib/async.js b/lib/async.js index d183152e..f7e36d15 100644 --- a/lib/async.js +++ b/lib/async.js @@ -271,28 +271,27 @@ module.exports = function resolve(x, options, callback) { } function processDirs(cb, dirs) { - iterate(0); + if (dirs.length === 0) return cb(null, undefined); + var dir = dirs[0]; - function iterate(i) { - if (i === dirs.length) return cb(null, undefined); - var dir = dirs[i]; + isDirectory(path.dirname(dir), isdir); - isDirectory(path.dirname(dir), function (err, status) { - if (err) return cb(err); - if (!status) return iterate(i + 1); - - loadAsFile(dir, opts.package, function (err, m, pkg) { - if (err) return cb(err); - if (m) return cb(null, m, pkg); + function isdir(err, isdir) { + if (err) return cb(err); + if (!isdir) return processDirs(cb, dirs.slice(1)); + loadAsFile(dir, opts.package, onfile); + } - loadAsDirectory(dir, opts.package, function (err, n, pkg) { - if (err) return cb(err); - if (n) return cb(null, n, pkg); + function onfile(err, m, pkg) { + if (err) return cb(err); + if (m) return cb(null, m, pkg); + loadAsDirectory(dir, opts.package, ondir); + } - iterate(i + 1); - }); - }); - }); + function ondir(err, n, pkg) { + if (err) return cb(err); + if (n) return cb(null, n, pkg); + processDirs(cb, dirs.slice(1)); } } function loadNodeModules(x, start, cb) {