Fix Hurd build, another go
[users/jgh/exim.git] / src / OS / os.c-GNU
index 06226839b68b051b6e20d432a6a92b0428ceec92..59ebdf32a97d362471497b3db18e79895e9fd641 100644 (file)
@@ -56,9 +56,10 @@ return -1;
 ssize_t
 os_pipe_read(int fd, void * buf, size_t count)
 {
-for (int rc, retries = 10; retries > 0; retries--)
+int rc;
+for (int retries = 10; retries > 0; retries--)
   {
-  if ((rc = read(fd, buf, count) >= 0) break;
+  if ((rc = read(fd, buf, count)) >= 0) break;
   if (rc != -1 || errno != EINTR) break;
   }
 return rc;
@@ -68,9 +69,10 @@ return rc;
 ssize_t
 os_pipe_write(int fd, void * buf, size_t count)
 {
-for (int rc, retries = 10; retries > 0; retries--)
+int rc;
+for (int retries = 10; retries > 0; retries--)
   {
-  if ((rc = write(fd, buf, count) >= 0) break;
+  if ((rc = write(fd, buf, count)) >= 0) break;
   if (rc != -1 || errno != EINTR) break;
   }
 return rc;
@@ -79,9 +81,10 @@ return rc;
 ssize_t
 os_pipe_writev(int fd, const struct iovec * iov, int iovcnt
 {
-for (int rc, retries = 10; retries > 0; retries--)
+int rc;
+for (int retries = 10; retries > 0; retries--)
   {
-  if ((rc = writev(fd, iov, iovcnt) >= 0) break;
+  if ((rc = writev(fd, iov, iovcnt)) >= 0) break;
   if (rc != -1 || errno != EINTR) break;
   }
 return rc;