Coverity: Don't leak error strings.
authorRichard W.M. Jones <rjones@redhat.com>
Wed, 8 Jun 2011 21:16:59 +0000 (22:16 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Mon, 13 Jun 2011 13:22:08 +0000 (14:22 +0100)
(cherry picked from commit 3135b8c378f9f98ae66e37fd79d305764334980d)

daemon/blockdev.c
daemon/fsck.c
daemon/mount.c
daemon/ntfs.c
daemon/parted.c

index 3df1807..1afb4b8 100644 (file)
@@ -68,11 +68,13 @@ call_blockdev (const char *device, const char *switc, int extraarg, int prints)
     if (sscanf (out, "%" SCNi64, &rv) != 1) {
       reply_with_error ("%s: expected output, but got nothing", argv[0]);
       free (out);
+      free (err);
       return -1;
     }
   }
 
   free (out);
+  free (err);
 
   return rv;
 }
index e452adc..7a36440 100644 (file)
@@ -39,5 +39,6 @@ do_fsck (const char *fstype, const char *device)
     return -1;
   }
 
+  free (err);
   return r;
 }
index 098283a..be289da 100644 (file)
@@ -116,6 +116,7 @@ do_mount_vfs (const char *options, const char *vfstype,
     return -1;
   }
 
+  free (error);
   return 0;
 }
 
@@ -367,6 +368,7 @@ do_mount_loop (const char *file, const char *mountpoint)
     return -1;
   }
 
+  free (error);
   return 0;
 }
 
index a25fc38..909ea18 100644 (file)
@@ -56,6 +56,7 @@ do_ntfs_3g_probe (int rw, const char *device)
     return -1;
   }
 
+  free (err);
   return r;
 }
 
@@ -72,6 +73,7 @@ do_ntfsresize (const char *device)
     return -1;
   }
 
+  free (err);
   return 0;
 }
 
@@ -92,5 +94,6 @@ do_ntfsresize_size (const char *device, int64_t size)
     return -1;
   }
 
+  free (err);
   return 0;
 }
index b9b138e..d52ad2c 100644 (file)
@@ -292,13 +292,16 @@ test_parted_m_opt (void)
   if (r == -1) {
     /* Test failed, eg. missing or completely unusable parted binary. */
     reply_with_error ("could not run 'parted' command");
+    free (err);
     return -1;
   }
 
   if (err && strstr (err, "invalid option -- m"))
-    return result = 0;
-
-  return result = 1;
+    result = 0;
+  else
+    result = 1;
+  free (err);
+  return result;
 }
 
 static char *