round community patches fix memory leak
This commit is contained in:
parent
99fda06c8a
commit
1aab7f3d93
@ -0,0 +1,44 @@
|
||||
From d9eb7f1536ed6262fc8c6518c6afe6053a450e9d Mon Sep 17 00:00:00 2001
|
||||
From: Peter Jones <pjones@redhat.com>
|
||||
Date: Tue, 28 May 2019 17:00:31 -0400
|
||||
Subject: [PATCH] Get rid of a memory leak of deleted boot entries.
|
||||
|
||||
Signed-off-by: Peter Jones <pjones@redhat.com>
|
||||
|
||||
Conflict:NA
|
||||
Reference:https://github.com/rhboot/efibootmgr/commit/d9eb7f1536ed6262fc8c6518c6afe6053a450e9d
|
||||
---
|
||||
src/efibootmgr.c | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/efibootmgr.c b/src/efibootmgr.c
|
||||
index 19a6edc..afcfc77 100644
|
||||
--- a/src/efibootmgr.c
|
||||
+++ b/src/efibootmgr.c
|
||||
@@ -106,13 +106,12 @@ read_vars(char **namelist,
|
||||
|
||||
for (i=0; namelist[i] != NULL; i++) {
|
||||
if (namelist[i]) {
|
||||
- entry = malloc(sizeof(var_entry_t));
|
||||
+ entry = calloc(1, sizeof(var_entry_t));
|
||||
if (!entry) {
|
||||
- efi_error("malloc(%zd) failed",
|
||||
+ efi_error("calloc(1, %zd) failed",
|
||||
sizeof(var_entry_t));
|
||||
goto err;
|
||||
}
|
||||
- memset(entry, 0, sizeof(var_entry_t));
|
||||
|
||||
rc = efi_get_variable(EFI_GLOBAL_GUID, namelist[i],
|
||||
&entry->data, &entry->data_size,
|
||||
@@ -611,6 +610,10 @@ delete_var(const char *prefix, uint16_t num)
|
||||
return rc;
|
||||
}
|
||||
list_del(&(entry->list));
|
||||
+ free(entry->name);
|
||||
+ free(entry->data);
|
||||
+ memset(entry, 0, sizeof(*entry));
|
||||
+ free(entry);
|
||||
break; /* short-circuit since it was found */
|
||||
}
|
||||
}
|
||||
@ -1,11 +1,13 @@
|
||||
Name: efibootmgr
|
||||
Release: 7
|
||||
Release: 8
|
||||
Version: 16
|
||||
Summary: A tool manipulating the EFI Boot Manager
|
||||
License: GPLv2+
|
||||
URL: https://github.com/rhboot/%{name}/
|
||||
Source0: https://github.com/rhboot/%{name}/releases/download/%{version}/%{name}-%{version}.tar.bz2
|
||||
|
||||
Patch6000: backport-get-rid-of-a-memory-leak-of-deleted-boot-entries.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: efi-srpm-macros >= 3-2 efi-filesystem git popt-devel efivar-libs >= 35-2 efivar-devel >= 35-2
|
||||
Requires: efi-filesystem
|
||||
@ -46,6 +48,9 @@ rm -rf %{buildroot}
|
||||
%{_mandir}/*/*.?.gz
|
||||
|
||||
%changelog
|
||||
* Tue Jun 8 2021 hanhui <hanhui15@huawei.com> - 16-8
|
||||
- round community patches fix memory leak
|
||||
|
||||
* Wed May 26 2021 liuyumeng <liuyumeng5@huawei.com> - 16-7
|
||||
- Add a BuildRequires for gcc
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user