The function allocates array but on building it if get_string() fails it returns the error leaving the array allocated. The caller does not care about it in error case either. Free it to fix memory leak. Signed-off-by: Yauheni Kaliuta <yauheni.kaliuta@xxxxxxxxxx> --- libkmod/libkmod-builtin.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libkmod/libkmod-builtin.c b/libkmod/libkmod-builtin.c index aaec5ddb0609..fc9a37644261 100644 --- a/libkmod/libkmod-builtin.c +++ b/libkmod/libkmod-builtin.c @@ -314,6 +314,7 @@ ssize_t kmod_builtin_get_modinfo(struct kmod_ctx *ctx, const char *modname, offset = get_string(iter, pos, &line, &linesz); if (offset <= 0) { count = (offset) ? -errno : -EOF; + free(*modinfo); goto fail; } -- 2.29.2