about summary refs log tree commit diff
path: root/src/nix/run.cc
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2018-02-26T17·29+0100
committerEelco Dolstra <edolstra@gmail.com>2018-02-26T17·29+0100
commit24ec7500032c2434e450b7bc3f77ff4c1f12c41c (patch)
treee3223f8f682d89f612aeb0f2c5ad8efe4472c9c4 /src/nix/run.cc
parent9432f3fb7d3614bf121399cdd83c82065efedbb2 (diff)
nix run: Fix segfault on macOS
Note that clearenv() is not available on macOS.

Fixes #1907.
Diffstat (limited to 'src/nix/run.cc')
-rw-r--r--src/nix/run.cc4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/nix/run.cc b/src/nix/run.cc
index 822654daf488..d04e106e037b 100644
--- a/src/nix/run.cc
+++ b/src/nix/run.cc
@@ -16,8 +16,6 @@ using namespace nix;
 
 std::string chrootHelperName = "__run_in_chroot";
 
-extern char * * environ;
-
 struct CmdRun : InstallablesCommand
 {
     std::vector<std::string> command = { "bash" };
@@ -109,7 +107,7 @@ struct CmdRun : InstallablesCommand
                 if (s) kept[var] = s;
             }
 
-            environ = nullptr;
+            clearEnv();
 
             for (auto & var : kept)
                 setenv(var.first.c_str(), var.second.c_str(), 1);