From 9b71d53bde21c8bb0d900c17863664e12753d844 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Wed, 2 Jun 2021 19:52:12 +0200 Subject: [PATCH] ucm: fix use after free in if_eval_regex_match() Signed-off-by: Jaroslav Kysela --- src/ucm/ucm_cond.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ucm/ucm_cond.c b/src/ucm/ucm_cond.c index 59d1a155..adb0ecd9 100644 --- a/src/ucm/ucm_cond.c +++ b/src/ucm/ucm_cond.c @@ -160,11 +160,12 @@ static int if_eval_regex_match(snd_use_case_mgr_t *uc_mgr, snd_config_t *eval) if (err < 0) return err; err = regcomp(&re, s, options); - free(s); if (err) { uc_error("Regex '%s' compilation failed (code %d)", s, err); + free(s); return -EINVAL; } + free(s); err = uc_mgr_get_substituted_value(uc_mgr, &s, string); if (err < 0) { -- 2.47.1