summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/appliance.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/appliance.c b/src/appliance.c
index 9f869540..836e6792 100644
--- a/src/appliance.c
+++ b/src/appliance.c
@@ -402,6 +402,12 @@ check_for_cached_appliance (guestfs_h *g,
/* Releases the lock on checksum. */
if (close (fd) == -1) {
perrorf (g, "close");
+ /* Allocated in hard_link_to_cached_appliance above, must be
+ * freed along this error path.
+ */
+ free (*kernel);
+ free (*initrd);
+ free (*appliance);
return -1;
}
@@ -540,6 +546,12 @@ build_supermin_appliance (guestfs_h *g,
/* Releases the lock on checksum. */
if (close (fd) == -1) {
perrorf (g, "close");
+ /* Allocated in hard_link_to_cached_appliance above, must be
+ * freed along this error path.
+ */
+ free (*kernel);
+ free (*initrd);
+ free (*appliance);
return -1;
}