Blame SOURCES/0006-Make-sure-data-created-for-load-options-is-freed.patch
|
|
5fb29d |
From 2c557c3168b37b42d4dec1b5aa2298e7ce7597ad Mon Sep 17 00:00:00 2001
|
|
|
5fb29d |
From: Peter Jones <pjones@redhat.com>
|
|
|
5fb29d |
Date: Wed, 10 Sep 2014 15:46:04 -0400
|
|
|
5fb29d |
Subject: [PATCH 06/18] Make sure data created for load options is freed.
|
|
|
5fb29d |
|
|
|
5fb29d |
Covscan... may not be right about this one. But it's better to be sure.
|
|
|
5fb29d |
|
|
|
5fb29d |
Signed-off-by: Peter Jones <pjones@redhat.com>
|
|
|
5fb29d |
---
|
|
|
5fb29d |
src/lib/efi.c | 9 ++++++++-
|
|
|
5fb29d |
1 file changed, 8 insertions(+), 1 deletion(-)
|
|
|
5fb29d |
|
|
|
5fb29d |
diff --git a/src/lib/efi.c b/src/lib/efi.c
|
|
|
5fb29d |
index 4218eb5..7dc3c92 100644
|
|
|
5fb29d |
--- a/src/lib/efi.c
|
|
|
5fb29d |
+++ b/src/lib/efi.c
|
|
|
5fb29d |
@@ -939,6 +939,7 @@ append_extra_args(uint8_t **data, size_t *data_size)
|
|
|
5fb29d |
free(new_data);
|
|
|
5fb29d |
if (ret < 0)
|
|
|
5fb29d |
return -1;
|
|
|
5fb29d |
+ new_data = NULL;
|
|
|
5fb29d |
new_data_size = 0;
|
|
|
5fb29d |
}
|
|
|
5fb29d |
|
|
|
5fb29d |
@@ -946,15 +947,21 @@ append_extra_args(uint8_t **data, size_t *data_size)
|
|
|
5fb29d |
ret = append_extra_args_unicode(&new_data, &new_data_size);
|
|
|
5fb29d |
else
|
|
|
5fb29d |
ret = append_extra_args_ascii(&new_data, &new_data_size);
|
|
|
5fb29d |
- if (ret < 0)
|
|
|
5fb29d |
+ if (ret < 0) {
|
|
|
5fb29d |
+ if (new_data) /* this can't happen, but covscan believes */
|
|
|
5fb29d |
+ free(new_data);
|
|
|
5fb29d |
return -1;
|
|
|
5fb29d |
+ }
|
|
|
5fb29d |
if (new_data_size) {
|
|
|
5fb29d |
ret = add_new_data(data, data_size, new_data, new_data_size);
|
|
|
5fb29d |
free(new_data);
|
|
|
5fb29d |
+ new_data = NULL;
|
|
|
5fb29d |
if (ret < 0)
|
|
|
5fb29d |
return -1;
|
|
|
5fb29d |
new_data_size = 0;
|
|
|
5fb29d |
}
|
|
|
5fb29d |
|
|
|
5fb29d |
+ if (new_data) /* once again, this can't happen, but covscan believes */
|
|
|
5fb29d |
+ free(new_data);
|
|
|
5fb29d |
return 0;
|
|
|
5fb29d |
}
|
|
|
5fb29d |
--
|
|
|
5fb29d |
1.9.3
|
|
|
5fb29d |
|