Coverity: Ensure fp is closed along all error paths.
authorRichard W.M. Jones <rjones@redhat.com>
Wed, 8 Jun 2011 21:30:24 +0000 (22:30 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Mon, 13 Jun 2011 13:12:09 +0000 (14:12 +0100)
(cherry picked from commit 346c5b0ebf58c81f657540eeb72abaa41bfc4e3f)

daemon/inotify.c

index 8e8b690..c8862e5 100644 (file)
@@ -314,7 +314,7 @@ do_inotify_files (void)
   char **ret = NULL;
   int size = 0, alloc = 0;
   unsigned int i;
-  FILE *fp;
+  FILE *fp = NULL;
   guestfs_int_inotify_event_list *events;
   char buf[PATH_MAX];
 
@@ -361,13 +361,12 @@ do_inotify_files (void)
     if (len > 0 && buf[len-1] == '\n')
       buf[len-1] = '\0';
 
-    if (add_string (&ret, &size, &alloc, buf) == -1) {
-      fclose (fp);
+    if (add_string (&ret, &size, &alloc, buf) == -1)
       goto error;
-    }
   }
 
   fclose (fp);
+  fp = NULL;
 
   if (add_string (&ret, &size, &alloc, NULL) == -1)
     goto error;
@@ -376,6 +375,9 @@ do_inotify_files (void)
   return ret;
 
  error:
+  if (fp != NULL)
+    fclose (fp);
+
   unlink ("/tmp/inotify");
   return NULL;
 #else