diff options
author | Anna Henningsen <anna@addaleax.net> | 2018-04-05 22:51:49 +0200 |
---|---|---|
committer | Anna Henningsen <anna@addaleax.net> | 2018-04-05 23:00:02 +0200 |
commit | e37effe4cec98688e75d770f4d0b7f68927e2b73 (patch) | |
tree | e7efa0fc8a2139f9aba4b66ea3f3613262f20cef /deps/npm/lib/install/copy-tree.js | |
parent | 026f6b787a7a23597790f1f0b076c58a68c7c38b (diff) | |
download | android-node-v8-e37effe4cec98688e75d770f4d0b7f68927e2b73.tar.gz android-node-v8-e37effe4cec98688e75d770f4d0b7f68927e2b73.tar.bz2 android-node-v8-e37effe4cec98688e75d770f4d0b7f68927e2b73.zip |
Revert "deps: upgrade npm to 5.8.0"
This reverts commit 25a816dcda7b1db0929501acfe13f2fe5119759b.
PR-URL: https://github.com/nodejs/node/pull/19837
Reviewed-By: Gus Caplan <me@gus.host>
Diffstat (limited to 'deps/npm/lib/install/copy-tree.js')
-rw-r--r-- | deps/npm/lib/install/copy-tree.js | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/deps/npm/lib/install/copy-tree.js b/deps/npm/lib/install/copy-tree.js index 2bf7064f33..a5b558cf59 100644 --- a/deps/npm/lib/install/copy-tree.js +++ b/deps/npm/lib/install/copy-tree.js @@ -1,26 +1,27 @@ 'use strict' var createNode = require('./node.js').create -module.exports = function (tree) { - return copyTree(tree, {}) +module.exports = function (tree, filter) { + return copyTree(tree, {}, filter) } -function copyTree (tree, cache) { +function copyTree (tree, cache, filter) { + if (filter && !filter(tree)) { return null } if (cache[tree.path]) { return cache[tree.path] } var newTree = cache[tree.path] = createNode(Object.assign({}, tree)) - copyModuleList(newTree, 'children', cache) + copyModuleList(newTree, 'children', cache, filter) newTree.children.forEach(function (child) { child.parent = newTree }) - copyModuleList(newTree, 'requires', cache) - copyModuleList(newTree, 'requiredBy', cache) + copyModuleList(newTree, 'requires', cache, filter) + copyModuleList(newTree, 'requiredBy', cache, filter) return newTree } -function copyModuleList (tree, key, cache) { +function copyModuleList (tree, key, cache, filter) { var newList = [] if (tree[key]) { tree[key].forEach(function (child) { - const copy = copyTree(child, cache) + const copy = copyTree(child, cache, filter) if (copy) { newList.push(copy) } |