aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRobert Hensing <robert@roberthensing.nl>2023-09-02 22:47:38 +0200
committerRobert Hensing <robert@roberthensing.nl>2023-10-01 13:58:20 +0100
commit860f64c345ac170763d39310dedcc624bd8f70a4 (patch)
tree9f12b71e4b6d19029d52b24fe51a8d709c55bb64 /src
parent9e212344f948e3f362807581bfe3e3d535372618 (diff)
pathExists: isDir when endswith /.
(cherry picked from commit f8a3893e8d77ce4a6e23719a0b2d88464cb84b9c)
Diffstat (limited to 'src')
-rw-r--r--src/libexpr/primops.cc4
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);