about summary refs log tree commit diff
diff options
context:
space:
mode:
authorShea Levy <shea@shealevy.com>2015-01-29T08·29-0500
committerShea Levy <shea@shealevy.com>2015-01-29T08·29-0500
commit73bf32ce9400a45f49d5551268f6a611735bdb32 (patch)
tree6b42fa28be7af285d9dfaff86e2f7c7efd86f018
parentde91a42c6ed6f35adae2ca0be6ad9ce556aac335 (diff)
parentc9bd6a1de41eb7f137e628df4a127ac8941ec07d (diff)
Merge remote-tracking branch 'shlevy/baseNameOf-no-copy'
baseNameOf: Don't copy paths to the store first
-rw-r--r--src/libexpr/primops.cc2
-rw-r--r--tests/lang/eval-okay-context.nix2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc
index 422ec971c9e0..6c30e6d549ec 100644
--- a/src/libexpr/primops.cc
+++ b/src/libexpr/primops.cc
@@ -710,7 +710,7 @@ static void prim_pathExists(EvalState & state, const Pos & pos, Value * * args,
 static void prim_baseNameOf(EvalState & state, const Pos & pos, Value * * args, Value & v)
 {
     PathSet context;
-    mkString(v, baseNameOf(state.coerceToString(pos, *args[0], context)), context);
+    mkString(v, baseNameOf(state.coerceToString(pos, *args[0], context, false, false)), context);
 }
 
 
diff --git a/tests/lang/eval-okay-context.nix b/tests/lang/eval-okay-context.nix
index 8cd8f2e131d8..7b9531cfe9e1 100644
--- a/tests/lang/eval-okay-context.nix
+++ b/tests/lang/eval-okay-context.nix
@@ -1,4 +1,4 @@
-let s = "foo ${builtins.substring 33 100 (baseNameOf ./eval-okay-context.nix)} bar";
+let s = "foo ${builtins.substring 33 100 (baseNameOf "${./eval-okay-context.nix}")} bar";
 in
   if s != "foo eval-okay-context.nix bar"
   then abort "context not discarded"