[source] packages: nvram: fix memory leak in _nvram_free
LEDE Commits
lede-commits at lists.infradead.org
Wed Nov 15 12:18:20 PST 2017
blogic pushed a commit to source.git, branch master:
https://git.lede-project.org/c382237ac33a787043b22abc42f0c5a80278baae
commit c382237ac33a787043b22abc42f0c5a80278baae
Author: Zhai Zhaoxuan <zhaizhaoxuan at xiaomi.com>
AuthorDate: Tue Jul 11 18:12:00 2017 +0800
packages: nvram: fix memory leak in _nvram_free
The value of nvram_tuple_t is allocated in _nvram_realloc,
but it is not freed in _nvram_free.
Signed-off-by: Zhai Zhaoxuan <zhaizhaoxuan at xiaomi.com>
---
package/utils/nvram/src/nvram.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/package/utils/nvram/src/nvram.c b/package/utils/nvram/src/nvram.c
index ca89392..d5e12ee 100644
--- a/package/utils/nvram/src/nvram.c
+++ b/package/utils/nvram/src/nvram.c
@@ -47,6 +47,8 @@ static void _nvram_free(nvram_handle_t *h)
for (i = 0; i < NVRAM_ARRAYSIZE(h->nvram_hash); i++) {
for (t = h->nvram_hash[i]; t; t = next) {
next = t->next;
+ if (t->value)
+ free(t->value);
free(t);
}
h->nvram_hash[i] = NULL;
@@ -55,6 +57,8 @@ static void _nvram_free(nvram_handle_t *h)
/* Free dead table */
for (t = h->nvram_dead; t; t = next) {
next = t->next;
+ if (t->value)
+ free(t->value);
free(t);
}
More information about the lede-commits
mailing list