All instances of 'pclose' now check for return value != 0.
authorRichard W.M. Jones <rjones@redhat.com>
Wed, 1 Jul 2009 16:13:39 +0000 (17:13 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Wed, 1 Jul 2009 16:13:39 +0000 (17:13 +0100)
We are generally interested that the subcommand ran without
error, ie. had exit status of 0.  'pclose' returns the exit
status, so we now check that pclose (fp) != 0.

daemon/find.c
daemon/initrd.c
daemon/tar.c

index 287aae3..7ceeafa 100644 (file)
@@ -113,7 +113,7 @@ do_find (char *dir)
       return NULL;
     }
   }
       return NULL;
     }
   }
-  if (pclose (fp) == -1) {
+  if (pclose (fp) != 0) {
     reply_with_perror ("pclose: find");
     free_stringslen (res, size);
     return NULL;
     reply_with_perror ("pclose: find");
     free_stringslen (res, size);
     return NULL;
index 513ed8d..2d6cbdd 100644 (file)
@@ -78,7 +78,7 @@ do_initrd_list (char *path)
     return NULL;
   }
 
     return NULL;
   }
 
-  if (pclose (fp) == -1) {
+  if (pclose (fp) != 0) {
     reply_with_perror ("pclose");
     free_strings (filenames);
     return NULL;
     reply_with_perror ("pclose");
     free_strings (filenames);
     return NULL;
index 4d9feaa..0320604 100644 (file)
@@ -88,7 +88,7 @@ do_tar_in (char *dir)
     return -1;
   }
 
     return -1;
   }
 
-  if (pclose (fp) == -1) {
+  if (pclose (fp) != 0) {
     err = errno;
     cancel_receive ();
     errno = err;
     err = errno;
     cancel_receive ();
     errno = err;
@@ -150,7 +150,7 @@ do_tar_out (char *dir)
     return -1;
   }
 
     return -1;
   }
 
-  if (pclose (fp) == -1) {
+  if (pclose (fp) != 0) {
     perror (dir);
     send_file_end (1);         /* Cancel. */
     return -1;
     perror (dir);
     send_file_end (1);         /* Cancel. */
     return -1;
@@ -214,7 +214,7 @@ do_tgz_in (char *dir)
     return -1;
   }
 
     return -1;
   }
 
-  if (pclose (fp) == -1) {
+  if (pclose (fp) != 0) {
     err = errno;
     cancel_receive ();
     errno = err;
     err = errno;
     cancel_receive ();
     errno = err;
@@ -276,7 +276,7 @@ do_tgz_out (char *dir)
     return -1;
   }
 
     return -1;
   }
 
-  if (pclose (fp) == -1) {
+  if (pclose (fp) != 0) {
     perror (dir);
     send_file_end (1);         /* Cancel. */
     return -1;
     perror (dir);
     send_file_end (1);         /* Cancel. */
     return -1;