aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/libstore/build.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index 273f25363..03a069ae2 100644
--- a/src/libstore/build.cc
+++ b/src/libstore/build.cc
@@ -1961,13 +1961,6 @@ void DerivationGoal::startBuilder()
auto drvName = storePathToName(drvPath);
tmpDir = createTempDir("", "nix-build-" + drvName, false, false, 0700);
- /* In a sandbox, for determinism, always use the same temporary
- directory. */
-#if __linux__
- tmpDirInSandbox = useChroot ? settings.sandboxBuildDir : tmpDir;
-#else
- tmpDirInSandbox = tmpDir;
-#endif
chownToBuilder(tmpDir);
/* Substitute output placeholders with the actual output paths. */
@@ -2385,7 +2378,6 @@ void DerivationGoal::startBuilder()
int res = helper.wait();
if (res != 0 && settings.sandboxFallback) {
useChroot = false;
- tmpDirInSandbox = tmpDir;
initTmpDir();
goto fallback;
} else if (res != 0)
@@ -2443,6 +2435,14 @@ void DerivationGoal::startBuilder()
void DerivationGoal::initTmpDir() {
+ /* In a sandbox, for determinism, always use the same temporary
+ directory. */
+#if __linux__
+ tmpDirInSandbox = useChroot ? settings.sandboxBuildDir : tmpDir;
+#else
+ tmpDirInSandbox = tmpDir;
+#endif
+
/* In non-structured mode, add all bindings specified in the
derivation via the environment, except those listed in the
passAsFile attribute. Those are passed as file names pointing