diff options
author | Alan Coopersmith <alan.coopersmith@oracle.com> | 2023-03-27 18:35:46 -0700 |
---|---|---|
committer | Alan Coopersmith <alan.coopersmith@oracle.com> | 2023-04-22 17:15:24 +0000 |
commit | 4524c578581b427145ae136844fc655a89e94777 (patch) | |
tree | 12d368ed993e0e98786af558bc92e1e39251b5bc /test/XpmWrite.c | |
parent | f131de92d6c4e2f62934e85b012287276ecf009c (diff) |
Set close-on-exec when opening files
Relies on platforms with O_CLOEXEC support following POSIX requirement
to not copy the close-on-exec flag to the new fd in dup2(), but to leave
it unset instead, since that's how fd's are passed to child processes
to handled compressed files.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Diffstat (limited to 'test/XpmWrite.c')
-rw-r--r-- | test/XpmWrite.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/test/XpmWrite.c b/test/XpmWrite.c index 49b5b21..998b1bb 100644 --- a/test/XpmWrite.c +++ b/test/XpmWrite.c @@ -38,6 +38,10 @@ #include "TestAllFiles.h" #include "CompareXpmImage.h" +#ifndef O_CLOEXEC +# define O_CLOEXEC 0 +#endif + #ifndef g_assert_no_errno /* defined in glib 2.66 & later */ #define g_assert_no_errno(n) g_assert_cmpint(n, >=, 0) #endif @@ -295,7 +299,7 @@ TestWriteFileFromBuffer(const gchar *filepath) ssize_t rd; /* Read file ourselves and verify the data matches */ - g_assert_no_errno(fd = open(newfilepath, O_RDONLY)); + g_assert_no_errno(fd = open(newfilepath, O_RDONLY | O_CLOEXEC)); while ((rd = read(fd, readbuf, sizeof(readbuf))) > 0) { g_assert_cmpmem(b, rd, readbuf, rd); b += rd; |