aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr/eval.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexpr/eval.cc')
-rw-r--r--src/libexpr/eval.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libexpr/eval.cc b/src/libexpr/eval.cc
index 04712e74b..e58ff695c 100644
--- a/src/libexpr/eval.cc
+++ b/src/libexpr/eval.cc
@@ -5,6 +5,7 @@
#include "store-api.hh"
#include "derivations.hh"
#include "nixexpr-ast.hh"
+#include "globals.hh"
namespace nix {
@@ -251,7 +252,9 @@ string coerceToString(EvalState & state, Expr e, PathSet & context,
if (state.srcToStore[path] != "")
dstPath = state.srcToStore[path];
else {
- dstPath = store->addToStore(path);
+ dstPath = readOnlyMode
+ ? computeStorePathForPath(path).first
+ : store->addToStore(path);
state.srcToStore[path] = dstPath;
printMsg(lvlChatty, format("copied source `%1%' -> `%2%'")
% path % dstPath);