mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-29 05:40:25 -04:00
ucm: fix parsing of the internal hexadecimal card identifier
Too many code was removed.
Fixes: f547b2e3 ("conf: introduce safe_strtol_base()")
Fixes: https://github.com/alsa-project/alsa-lib/issues/188
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
ea5481296f
commit
050f18c525
1 changed files with 3 additions and 0 deletions
|
|
@ -811,6 +811,7 @@ void uc_mgr_card_close(snd_use_case_mgr_t *uc_mgr)
|
|||
*/
|
||||
const char *uc_mgr_alibcfg_by_device(snd_config_t **top, const char *name)
|
||||
{
|
||||
char buf[5];
|
||||
long card_num;
|
||||
snd_config_t *config;
|
||||
snd_use_case_mgr_t *uc_mgr;
|
||||
|
|
@ -818,6 +819,8 @@ const char *uc_mgr_alibcfg_by_device(snd_config_t **top, const char *name)
|
|||
|
||||
if (strncmp(name, "_ucm", 4) || strlen(name) < 12 || name[8] != '.')
|
||||
return NULL;
|
||||
strncpy(buf, name + 4, 4);
|
||||
buf[4] = '\0';
|
||||
err = safe_strtol_base(name, &card_num, 16);
|
||||
if (err < 0 || card_num < 0 || card_num > 0xffff)
|
||||
return NULL;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue