ucm: allow '-' prefix to avoid errors when the variable is not defined

It may be useful to check if variable is not defined.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Jaroslav Kysela 2022-05-17 14:35:51 +02:00
parent 11ec9e497e
commit 5062565e82

View 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;