fix 3 minor bugs in joinPath (see #13455) (#13462) [backport]

This commit is contained in:
Andrey Makarov 2020-02-23 22:22:46 +03:00 • committed by GitHub
commit 3dad130034
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 10 additions and 2 deletions

View file

@ -69,7 +69,8 @@ proc addNormalizePath*(x: string; result: var string; state: var int;
while hasNext(it, x):
let b = next(it, x)
if (state shr 1 == 0) and isSlash(x, b):
result.add dirSep
if result.len == 0 or result[^1] notin {DirSep, AltSep}:
result.add dirSep
state = state or 1
elif isDotDot(x, b):
if (state shr 1) >= 1: