diff options
| -rw-r--r-- | lib/dirtree.c | 2 | ||||
| -rw-r--r-- | lib/xwrap.c | 2 | 
2 files changed, 2 insertions, 2 deletions
| diff --git a/lib/dirtree.c b/lib/dirtree.c index 85b1a3cf..7ad699e1 100644 --- a/lib/dirtree.c +++ b/lib/dirtree.c @@ -115,7 +115,7 @@ struct dirtree *dirtree_handle_callback(struct dirtree *new,    if (dir) {      if (flags & (DIRTREE_RECURSE|DIRTREE_COMEAGAIN)) { -      new->data = openat(dirtree_parentfd(new), new->name, 0); +      new->data = openat(dirtree_parentfd(new), new->name, O_CLOEXEC);        dirtree_recurse(new, callback, flags & DIRTREE_SYMFOLLOW);        if (flags & DIRTREE_COMEAGAIN) flags = callback(new);      } diff --git a/lib/xwrap.c b/lib/xwrap.c index 583a4cae..4516250f 100644 --- a/lib/xwrap.c +++ b/lib/xwrap.c @@ -218,7 +218,7 @@ void xunlink(char *path)  // 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;  } | 
