diff options
Diffstat (limited to 'deps/npm/lib/utils/relativize.js')
-rw-r--r-- | deps/npm/lib/utils/relativize.js | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/deps/npm/lib/utils/relativize.js b/deps/npm/lib/utils/relativize.js index 74c45c5d3e..70f2032069 100644 --- a/deps/npm/lib/utils/relativize.js +++ b/deps/npm/lib/utils/relativize.js @@ -30,7 +30,18 @@ var split = process.platform === "win32" ? /[\/\\]/ : "/" function isAbsolute (p) { if (process.platform !== "win32") return p.charAt(0) === "/" - return path.resolve(p) === p + + + // yanked from node/lib/path.js + var splitDeviceRe = + /^([a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/][^\\\/]+)?([\\\/])?([\s\S]*?)$/ + + var result = p.match(splitDeviceRe) + , device = result[1] || "" + , isUnc = device && device.charAt(1) !== ":" + , isAbs = !!result[2] || isUnc // UNC always absolute + + return isAbs } if (module === require.main) { |