]> git.alsa-project.org Git - alsa-lib.git/commitdiff
ucm: allow '-' prefix to avoid errors when the variable is not defined
authorJaroslav Kysela <perex@perex.cz>
Tue, 17 May 2022 12:35:51 +0000 (14:35 +0200)
committerJaroslav Kysela <perex@perex.cz>
Tue, 17 May 2022 12:36:03 +0000 (14:36 +0200)
It may be useful to check if variable is not defined.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
src/ucm/ucm_subs.c

index 8b42b889944e4f7951341e0f8e065c6b3723f73c..a7d79430cadd1fe09ac925e798db6c158fb78e7f 100644 (file)
@@ -549,13 +549,20 @@ static char *rval_sysfs(snd_use_case_mgr_t *uc_mgr ATTRIBUTE_UNUSED, const char
 static char *rval_var(snd_use_case_mgr_t *uc_mgr, const char *id)
 {
        const char *v;
+       bool ignore_not_found = false;
 
        if (uc_mgr->conf_format < 3) {
                uc_error("variable substitution is supported in v3+ syntax");
                return NULL;
        }
 
+       if (id[0] == '-') {
+               ignore_not_found = true;
+               id++;
+       }
        v = uc_mgr_get_variable(uc_mgr, id);
+       if (v == NULL && ignore_not_found)
+               v = "";
        if (v)
                return strdup(v);
        return NULL;