summaryrefslogtreecommitdiffstats
path: root/src/image.c
diff options
context:
space:
mode:
authorPali Rohár <pali.rohar@gmail.com>2014-09-29 00:43:15 +0200
committerPali Rohár <pali.rohar@gmail.com>2014-09-29 00:43:15 +0200
commitdfc021d7c416b47576631016ac931271318df268 (patch)
tree830b48cef404099c495bdd721739ce742bc78a02 /src/image.c
parent23b916bcc9de857a1c88718cc2315813efbcb4e4 (diff)
download0xFFFF-dfc021d7c416b47576631016ac931271318df268.tar.bz2
image: Fix memory leaks
Diffstat (limited to 'src/image.c')
-rw-r--r--src/image.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/image.c b/src/image.c
index 44655fb..48d80d8 100644
--- a/src/image.c
+++ b/src/image.c
@@ -88,14 +88,13 @@ static void image_missing_values_from_name(struct image * image, const char * na
if ( image->devices && image->devices->device && ! image->devices->hwrevs )
image->devices->hwrevs = hwrevs_alloc_from_string(hwrevs);
- else
- free(hwrevs);
if ( ! image->version )
image->version = version;
else
free(version);
+ free(hwrevs);
free(str);
}
@@ -135,8 +134,10 @@ char * image_name_alloc_from_values(struct image * image) {
length += 1 + strlen(image->version);
name = calloc(1, length);
- if ( ! name )
+ if ( ! name ) {
+ free(hwrevs);
ALLOC_ERROR_RETURN(NULL);
+ }
strcpy(name, type);
ptr = name + strlen(name);