mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-11-05 13:30:00 -05:00
ucm: Handle 'Error' keyword in the master file
With the conditional blocks, it may be useful to terminate the hardware detection from the configuration. Introduce 'Error' keyword for the master UCM configuration file. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
c1e72460de
commit
e80f35611d
1 changed files with 22 additions and 0 deletions
|
|
@ -244,6 +244,24 @@ int parse_get_safe_name(snd_use_case_mgr_t *uc_mgr, snd_config_t *n,
|
|||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Handle 'Error' configuration node.
|
||||
*/
|
||||
static int error_node(snd_use_case_mgr_t *uc_mgr, snd_config_t *cfg)
|
||||
{
|
||||
int err;
|
||||
char *s;
|
||||
|
||||
err = parse_string_substitute3(uc_mgr, cfg, &s);
|
||||
if (err < 0) {
|
||||
uc_error("error: failed to get Error string");
|
||||
return err;
|
||||
}
|
||||
uc_error("%s", s);
|
||||
free(s);
|
||||
return -ENXIO;
|
||||
}
|
||||
|
||||
/*
|
||||
* Evaluate variable regex definitions (in-place delete)
|
||||
*/
|
||||
|
|
@ -1899,6 +1917,10 @@ static int parse_master_file(snd_use_case_mgr_t *uc_mgr, snd_config_t *cfg)
|
|||
continue;
|
||||
}
|
||||
|
||||
/* error */
|
||||
if (strcmp(id, "Error") == 0)
|
||||
return error_node(uc_mgr, n);
|
||||
|
||||
uc_error("uknown master file field %s", id);
|
||||
}
|
||||
return 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue