summaryrefslogtreecommitdiff
path: root/deps/npm/lib/config/find-prefix.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/lib/config/find-prefix.js')
-rw-r--r--deps/npm/lib/config/find-prefix.js56
1 files changed, 0 insertions, 56 deletions
diff --git a/deps/npm/lib/config/find-prefix.js b/deps/npm/lib/config/find-prefix.js
deleted file mode 100644
index 58f5cc8040..0000000000
--- a/deps/npm/lib/config/find-prefix.js
+++ /dev/null
@@ -1,56 +0,0 @@
-// try to find the most reasonable prefix to use
-
-module.exports = findPrefix
-
-var fs = require('fs')
-var path = require('path')
-
-function findPrefix (p, cb_) {
- function cb (er, p) {
- process.nextTick(function () {
- cb_(er, p)
- })
- }
-
- p = path.resolve(p)
- // if there's no node_modules folder, then
- // walk up until we hopefully find one.
- // if none anywhere, then use cwd.
- var walkedUp = false
- while (path.basename(p) === 'node_modules') {
- p = path.dirname(p)
- walkedUp = true
- }
- if (walkedUp) return cb(null, p)
-
- findPrefix_(p, p, cb)
-}
-
-function findPrefix_ (p, original, cb) {
- if (p === '/' ||
- (process.platform === 'win32' && p.match(/^[a-zA-Z]:(\\|\/)?$/))) {
- return cb(null, original)
- }
- fs.readdir(p, function (er, files) {
- // an error right away is a bad sign.
- // unless the prefix was simply a non
- // existent directory.
- if (er && p === original) {
- if (er.code === 'ENOENT') return cb(null, original)
- return cb(er)
- }
-
- // walked up too high or something.
- if (er) return cb(null, original)
-
- if (files.indexOf('node_modules') !== -1 ||
- files.indexOf('package.json') !== -1) {
- return cb(null, p)
- }
-
- var d = path.dirname(p)
- if (d === p) return cb(null, original)
-
- return findPrefix_(d, original, cb)
- })
-}