git.annexia.org
/
libguestfs.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
a31ac8f
)
Coverity: fix memory leak along error path.
author
Richard W.M. Jones
<rjones@redhat.com>
Tue, 23 Aug 2011 18:50:11 +0000
(19:50 +0100)
committer
Richard W.M. Jones
<rjones@redhat.com>
Tue, 23 Aug 2011 18:50:11 +0000
(19:50 +0100)
src/appliance.c
patch
|
blob
|
history
diff --git
a/src/appliance.c
b/src/appliance.c
index
9f86954
..
836e679
100644
(file)
--- 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");
/* 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;
}
return -1;
}
@@
-540,6
+546,12
@@
build_supermin_appliance (guestfs_h *g,
/* Releases the lock on checksum. */
if (close (fd) == -1) {
perrorf (g, "close");
/* 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;
}
return -1;
}