diff --git a/lib/Compilation.js b/lib/Compilation.js index 43ff67020..ec46884f3 100644 --- a/lib/Compilation.js +++ b/lib/Compilation.js @@ -1814,41 +1814,21 @@ class Compilation { * @param {Module} module module for processeing * @returns {void} */ - const enqueueJob = module => { + const processModule = module => { if (!moduleGraph.setDepthIfLower(module, depth)) return; queue.add(module); }; - /** - * @param {Dependency} dependency dependency to assign depth to - * @returns {void} - */ - const assignDepthToDependency = dependency => { - const module = this.moduleGraph.getModule(dependency); - if (module) { - enqueueJob(module); - } - }; - - /** - * @param {DependenciesBlock} block block to assign depth to - * @returns {void} - */ - const assignDepthToDependencyBlock = block => { - if (block.dependencies) { - for (const dep of block.dependencies) assignDepthToDependency(dep); - } - - if (block.blocks) { - for (const b of block.blocks) assignDepthToDependencyBlock(b); - } - }; - for (module of queue) { queue.delete(module); depth = moduleGraph.getDepth(module) + 1; - assignDepthToDependencyBlock(module); + for (const connection of moduleGraph.getOutgoingConnections(module)) { + const refModule = connection.module; + if (refModule) { + processModule(refModule); + } + } } }