1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-27 00:11:17 +02:00

nix run: Fix segfault on macOS

Note that clearenv() is not available on macOS.

Fixes #1907.
This commit is contained in:
Eelco Dolstra 2018-02-26 18:29:40 +01:00
parent 9432f3fb7d
commit 24ec750003
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. */