diff options
author | Jaroslav Kysela <perex@perex.cz> | 2022-05-23 13:29:36 +0200 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2022-05-23 13:29:39 +0200 |
commit | 7474518a96bbfad284f68b9267470f4252fa3f78 (patch) | |
tree | 2ce770afcc67bc9222c62cb3606e807a40e5ebe5 | |
parent | 7f2d6c3aac3505ceee4b0d3e8b3ca423ce29b070 (diff) | |
download | alsa-lib-7474518a96bbfad284f68b9267470f4252fa3f78.tar.gz |
ucm: fix memory leak in the error path (Include)
The included configuration tree must be freed
in the error path, too.
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
-rw-r--r-- | src/ucm/ucm_include.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/ucm/ucm_include.c b/src/ucm/ucm_include.c index 0b55890e..7def2d31 100644 --- a/src/ucm/ucm_include.c +++ b/src/ucm/ucm_include.c @@ -305,13 +305,14 @@ int uc_mgr_evaluate_include(snd_use_case_mgr_t *uc_mgr, if (a == NULL) continue; err = uc_mgr_evaluate_inplace(uc_mgr, a); - if (err < 0) + if (err < 0) { + snd_config_delete(a); return err; + } err = uc_mgr_config_tree_merge(uc_mgr, parent, a, before, after); + snd_config_delete(a); if (err < 0) return err; - snd_config_delete(a); - } return 0; } |