From 18d9a4466ce1c622c13810e25ccf73ae937b1716 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 9 Apr 2014 23:05:42 +0200 Subject: daemon: Don't abort when $PATH is undefined. * nix/nix-daemon/guix-daemon.cc (main): Check whether getenv ("PATH") returns NULL before blindly initializing 'search_path'. Before that 'guix-daemon' would abort when run in an environment where 'PATH' is undefined. --- nix/nix-daemon/guix-daemon.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'nix/nix-daemon') diff --git a/nix/nix-daemon/guix-daemon.cc b/nix/nix-daemon/guix-daemon.cc index 71815169f7..0bb9f7559c 100644 --- a/nix/nix-daemon/guix-daemon.cc +++ b/nix/nix-daemon/guix-daemon.cc @@ -257,8 +257,14 @@ main (int argc, char *argv[]) /* Hackily help 'local-store.cc' find our 'guix-authenticate' program, which is known as 'OPENSSL_PATH' here. */ - std::string search_path (getenv ("PATH")); - search_path = settings.nixLibexecDir + ":" + search_path; + std::string search_path; + search_path = settings.nixLibexecDir; + if (getenv ("PATH") != NULL) + { + search_path += ":"; + search_path += getenv ("PATH"); + } + setenv ("PATH", search_path.c_str (), 1); /* Use our substituter by default. */ -- cgit v1.2.3