diff options
Diffstat (limited to 'ext/sdbm/_sdbm.c')
-rw-r--r-- | ext/sdbm/_sdbm.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/ext/sdbm/_sdbm.c b/ext/sdbm/_sdbm.c index 9b1cef45b0..c348808d31 100644 --- a/ext/sdbm/_sdbm.c +++ b/ext/sdbm/_sdbm.c @@ -226,6 +226,9 @@ sdbm_prep(char *dirname, char *pagname, int flags, int mode) * If we fail anywhere, undo everything, return NULL. */ flags |= O_BINARY; +#ifdef O_CLOEXEC + flags |= O_CLOEXEC; +#endif if ((db->pagf = open(pagname, flags, mode)) == -1) goto err; if (fd_set_cloexec(db->pagf) == -1) goto err; |