diff options
author | bptato <nincsnevem662@gmail.com> | 2024-12-11 17:51:06 +0100 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2024-12-11 17:53:02 +0100 |
commit | a32104f93b19061d85388178793040bc083151e1 (patch) | |
tree | 0df94e43d882c8e31e73e57a30ff17ab49af306c /src | |
parent | 8140f97c25e60318df9d2b09b79b9d07ade6380c (diff) | |
download | chawan-a32104f93b19061d85388178793040bc083151e1.tar.gz |
twtstr: small cleanup
Diffstat (limited to 'src')
-rw-r--r-- | src/utils/twtstr.nim | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/utils/twtstr.nim b/src/utils/twtstr.nim index a5493738..2734e5ce 100644 --- a/src/utils/twtstr.nim +++ b/src/utils/twtstr.nim @@ -579,18 +579,16 @@ func utf16Len*(s: openArray[char]): int = result += 2 proc expandPath*(path: string): string = - if path.len == 0 or path[0] != '~': - return path - if path.len == 1: - return getHomeDir() - elif path[1] == '/': - return getHomeDir() / path.substr(2) - else: + if path.len > 0 and path[0] == '~': + if path.len == 1: + return getHomeDir() + if path[1] == '/': + return getHomeDir() / path.substr(2) let usr = path.until({'/'}, 1) let p = getpwnam(cstring(usr)) - if p != nil: + if p != nil and p.pw_dir != nil: return $p.pw_dir / path.substr(usr.len) - return path + return path func deleteChars*(s: openArray[char]; todel: set[char]): string = result = newStringOfCap(s.len) |