patch 7.4.1595
Problem: Not checking for failed open(). (Coverity)
Solution: Check file descriptor not being negative.
diff --git a/src/os_unix.c b/src/os_unix.c
index a9c20c9..4cc9de7 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -5150,7 +5150,7 @@
null_fd = open("/dev/null", O_RDWR | O_EXTRA, 0);
/* set up stdin for the child */
- if (use_null_for_in)
+ if (use_null_for_in && null_fd >= 0)
{
close(0);
ignored = dup(null_fd);
@@ -5165,7 +5165,7 @@
}
/* set up stderr for the child */
- if (use_null_for_err)
+ if (use_null_for_err && null_fd >= 0)
{
close(2);
ignored = dup(null_fd);
@@ -5185,7 +5185,7 @@
}
/* set up stdout for the child */
- if (use_null_for_out)
+ if (use_null_for_out && null_fd >= 0)
{
close(0);
ignored = dup(null_fd);
diff --git a/src/version.c b/src/version.c
index 06cec58..bc817d7 100644
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1595,
+/**/
1594,
/**/
1593,