Mercurial > hg > toybox
diff lib/xwrap.c @ 1403:411cf82cdf77 draft
Default xcreate/xopen to O_CLOEXEC. (Pass O_CLOEXEC in the flags to switch it back off.)
This way we're not leaking filehandles to children from things like find -exec.
author | Rob Landley <rob@landley.net> |
---|---|
date | Sat, 26 Jul 2014 13:27:07 -0500 |
parents | 31cb9ba1815c |
children | 43bed82c87df |
line wrap: on
line diff
--- a/lib/xwrap.c Sat Jul 26 13:22:59 2014 -0500 +++ b/lib/xwrap.c Sat Jul 26 13:27:07 2014 -0500 @@ -218,7 +218,7 @@ // Die unless we can open/create a file, returning file descriptor. int xcreate(char *path, int flags, int mode) { - int fd = open(path, flags, mode); + int fd = open(path, flags^O_CLOEXEC, mode); if (fd == -1) perror_exit("%s", path); return fd; }