Skip to content

Commit 70ed9cc

Browse files
committed
util.resolvePath(): fix edge cases
1 parent 423f215 commit 70ed9cc

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

src/util.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,14 @@ export function resolvePath (base, relative, append) {
4242
return base + relative
4343
}
4444
let stack = base.split('/')
45-
// remove trailing segment if not appending
46-
if (!append) {
45+
// remove trailing segment if:
46+
// - not appending
47+
// - appending to trailing slash (last segment is empty)
48+
if (!append || !stack[stack.length - 1]) {
4749
stack.pop()
4850
}
4951
// resolve relative path
50-
let segments = relative.split('/')
52+
let segments = relative.replace(/^\//, '').split('/')
5153
for (let i = 0; i < segments.length; i++) {
5254
let segment = segments[i]
5355
if (segment === '.') {

0 commit comments

Comments
 (0)