34 lines
923 B
Diff
34 lines
923 B
Diff
From 39dd171623744ac390dadf487c5a3ebf0b69f2ca Mon Sep 17 00:00:00 2001
|
|
From: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
Date: Fri, 9 Apr 2021 18:44:23 +0900
|
|
Subject: [PATCH] libkmod-config: fix a memory leak when kmod_list_append()
|
|
fails
|
|
|
|
From kmod_config_new(), when kmod_list_append() fails,
|
|
fix not list-appended kmod_config_path leak.
|
|
|
|
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
|
|
---
|
|
libkmod/libkmod-config.c | 4 +++-
|
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/libkmod/libkmod-config.c b/libkmod/libkmod-config.c
|
|
index 7b62367..78957db 100644
|
|
--- a/libkmod/libkmod-config.c
|
|
+++ b/libkmod/libkmod-config.c
|
|
@@ -853,8 +853,10 @@ int kmod_config_new(struct kmod_ctx *ctx, struct kmod_config **p_config,
|
|
memcpy(cf->path, path, pathlen);
|
|
|
|
tmp = kmod_list_append(path_list, cf);
|
|
- if (tmp == NULL)
|
|
+ if (tmp == NULL) {
|
|
+ free(cf);
|
|
goto oom;
|
|
+ }
|
|
path_list = tmp;
|
|
}
|
|
|
|
--
|
|
2.23.0
|
|
|