diff options
author | Robert Hensing <robert@roberthensing.nl> | 2023-09-02 22:47:38 +0200 |
---|---|---|
committer | Robert Hensing <robert@roberthensing.nl> | 2023-10-01 13:58:20 +0100 |
commit | 860f64c345ac170763d39310dedcc624bd8f70a4 (patch) | |
tree | 9f12b71e4b6d19029d52b24fe51a8d709c55bb64 /src | |
parent | 9e212344f948e3f362807581bfe3e3d535372618 (diff) |
pathExists: isDir when endswith /.
(cherry picked from commit f8a3893e8d77ce4a6e23719a0b2d88464cb84b9c)
Diffstat (limited to 'src')
-rw-r--r-- | src/libexpr/primops.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc index cd9a05bb2..d8d3e8bee 100644 --- a/src/libexpr/primops.cc +++ b/src/libexpr/primops.cc @@ -1528,7 +1528,9 @@ static void prim_pathExists(EvalState & state, const PosIdx pos, Value * * args, auto path = realisePath(state, pos, arg, { .checkForPureEval = false }); /* SourcePath doesn't know about trailing slash. */ - auto mustBeDir = arg.type() == nString && arg.str().ends_with("/"); + auto mustBeDir = arg.type() == nString + && (arg.str().ends_with("/") + || arg.str().ends_with("/.")); try { auto checked = state.checkSourcePath(path); |