diff src/memfile.c @ 2003:5d5cad78a838 v7.2.300

updated for version 7.2-300
author vimboss
date Tue, 17 Nov 2009 16:13:15 +0000
parents 0b796e045c42
children 6d3d35ff2c2b
line wrap: on
line diff
--- a/src/memfile.c
+++ b/src/memfile.c
@@ -1343,6 +1343,11 @@ mf_do_open(mfp, fname, flags)
     }
     else
     {
+#ifdef HAVE_FD_CLOEXEC
+	int fdflags = fcntl(mfp->mf_fd, F_GETFD);
+	if (fdflags >= 0 && (fdflags & FD_CLOEXEC) == 0)
+	    fcntl(mfp->mf_fd, F_SETFD, fdflags | FD_CLOEXEC);
+#endif
 #ifdef HAVE_SELINUX
 	mch_copy_sec(fname, mfp->mf_fname);
 #endif