diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2014-11-19 17:09:27 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2015-05-11 17:41:56 +0200 |
commit | 4eb62b5230c29e2f6ab17352439521083846c259 (patch) | |
tree | 25931537d2d2797375e7a747129dcd1f7e0ef597 /nix/libutil/util.hh | |
parent | f160a30d5612506de41a8206a57eccee1cd85fb7 (diff) | |
download | guix-4eb62b5230c29e2f6ab17352439521083846c259.tar.gz |
nix-daemon: Call exit(), not _exit()
This was preventing destructors from running. In particular, it was preventing the deletion of the temproot file for each worker process. It may also have been responsible for the excessive WAL growth on Hydra (due to the SQLite database not being closed properly). Apparently broken by accident in 8e9140cfdef9dbd1eb61e4c75c91d452ab5e4a74.
Diffstat (limited to 'nix/libutil/util.hh')
-rw-r--r-- | nix/libutil/util.hh | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/nix/libutil/util.hh b/nix/libutil/util.hh index 418d76daec..0ad0026711 100644 --- a/nix/libutil/util.hh +++ b/nix/libutil/util.hh @@ -269,7 +269,8 @@ void killUser(uid_t uid); /* Fork a process that runs the given function, and return the child pid to the caller. */ -pid_t startProcess(std::function<void()> fun, const string & errorPrefix = "error: "); +pid_t startProcess(std::function<void()> fun, bool dieWithParent = true, + const string & errorPrefix = "error: ", bool runExitHandlers = false); /* Run a program and return its stdout in a string (i.e., like the |