1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-15 23:12:44 +01:00

nix run: Fix segfault on macOS

Note that clearenv() is not available on macOS.

Fixes #1907.

(cherry picked from commit 24ec750003)
This commit is contained in:
Eelco Dolstra 2018-02-26 18:29:40 +01:00
parent bdd88cabd3
commit d0665a22cc
No known key found for this signature in database
GPG key ID: 8170B4726D7198DE
3 changed files with 11 additions and 3 deletions

View file

@ -73,6 +73,13 @@ std::map<std::string, std::string> getEnv()
}
void clearEnv()
{
for (auto & name : getEnv())
unsetenv(name.first.c_str());
}
Path absPath(Path path, Path dir)
{
if (path[0] != '/') {

View file

@ -32,6 +32,9 @@ string getEnv(const string & key, const string & def = "");
/* Get the entire environment. */
std::map<std::string, std::string> getEnv();
/* Clear the environment. */
void clearEnv();
/* Return an absolutized path, resolving paths relative to the
specified directory, or the current directory otherwise. The path
is also canonicalised. */