Skip to content

Commit

Permalink
path: fix path.relative UNC path result
Browse files Browse the repository at this point in the history
When the result of a path.relative() is an absolute UNC path, it should
include the leading backslashes.

Fixes: #8444
PR-URL: #8523
Reviewed-By: Brian White <mscdex@mscdex.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>
  • Loading branch information
jasongin authored and Fishrock123 committed Oct 11, 2016
1 parent 6fb8ebd commit d72a7b3
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 6 deletions.
6 changes: 1 addition & 5 deletions lib/path.js
Original file line number Diff line number Diff line change
Expand Up @@ -619,12 +619,8 @@ const win32 = {

// We found a mismatch before the first common path separator was seen, so
// return the original `to`.
// TODO: do this just for device roots (and not UNC paths)?
if (i !== length && lastCommonSep === -1) {
if (toStart > 0)
return toOrig.slice(toStart);
else
return toOrig;
return toOrig;
}

var out = '';
Expand Down
4 changes: 3 additions & 1 deletion test/parallel/test-path.js
Original file line number Diff line number Diff line change
Expand Up @@ -492,7 +492,9 @@ const relativeTests = [
['C:\\baz-quux', 'C:\\baz', '..\\baz'],
['C:\\baz', 'C:\\baz-quux', '..\\baz-quux'],
['\\\\foo\\baz-quux', '\\\\foo\\baz', '..\\baz'],
['\\\\foo\\baz', '\\\\foo\\baz-quux', '..\\baz-quux']
['\\\\foo\\baz', '\\\\foo\\baz-quux', '..\\baz-quux'],
['C:\\baz', '\\\\foo\\bar\\baz', '\\\\foo\\bar\\baz'],
['\\\\foo\\bar\\baz', 'C:\\baz', 'C:\\baz']
]
],
[ path.posix.relative,
Expand Down

0 comments on commit d72a7b3

Please sign in to comment.