-closing of control pipe is no error
authorChristian Grothoff <christian@grothoff.org>
Sat, 10 Mar 2012 21:51:54 +0000 (21:51 +0000)
committerChristian Grothoff <christian@grothoff.org>
Sat, 10 Mar 2012 21:51:54 +0000 (21:51 +0000)
src/util/os_priority.c

index 4f3c5e62209f1e78b54d456ae84ab16e5e5cdf40..30421a19728671e5fe05cd78d683001e95e5dfad 100644 (file)
@@ -326,6 +326,7 @@ parent_control_handler (void *cls,
 {
   struct GNUNET_DISK_FileHandle *control_pipe = cls;
   char sig;
+  ssize_t ret;
   
   LOG (GNUNET_ERROR_TYPE_DEBUG, "`%s' invoked because of %d\n", __FUNCTION__,
        tc->reason);
@@ -336,10 +337,11 @@ parent_control_handler (void *cls,
     GNUNET_DISK_file_close (control_pipe);
     return;
   }
-  if (GNUNET_DISK_file_read (control_pipe, &sig, sizeof (sig)) !=
-      sizeof (sig))
+  ret = GNUNET_DISK_file_read (control_pipe, &sig, sizeof (sig));
+  if (sizeof (sig) != ret)
   {
-    LOG_STRERROR (GNUNET_ERROR_TYPE_ERROR, "GNUNET_DISK_file_read");
+    if (-1 == ret)
+      LOG_STRERROR (GNUNET_ERROR_TYPE_ERROR, "GNUNET_DISK_file_read");
     GNUNET_DISK_file_close (control_pipe);
     return;
   }