[FreeBSD and OpenBSD contributors clarified that O_CLOEXEC has been
supported for ~ 2 years on both, so for the moment we're assuming
that every platform with kqueue also has working O_CLOEXEC. Please reopen
the bug, with a tested patch that uses _dbus_fd_set_close_on_exec() instead,
if this assumption turns out to be false. -smcv]
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=72213
Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
/* FIXME - less lame error handling for failing to add a watch;
* we may need to sleep.
*/
- fd = open (new_dirs[i], O_RDONLY);
+ fd = open (new_dirs[i], O_RDONLY | O_CLOEXEC);
if (fd < 0)
{
if (errno != ENOENT)