diff --git a/src/pcm/pcm_rate.c b/src/pcm/pcm_rate.c index 46eb7973..f60b0aeb 100644 --- a/src/pcm/pcm_rate.c +++ b/src/pcm/pcm_rate.c @@ -1339,7 +1339,8 @@ static int is_string_array(const snd_config_t *conf) if (i && i != snd_config_iterator_end(conf)) { snd_config_t *n = snd_config_iterator_entry(i); const char *id; - snd_config_get_id(n, &id); + if (snd_config_get_id(n, &id) < 0) + return 0; if (id && strcmp(id, "0") != 0) return 0; } @@ -1422,7 +1423,8 @@ int snd_pcm_rate_open(snd_pcm_t **pcmp, const char *name, snd_config_for_each(i, next, converter) { snd_config_t *n = snd_config_iterator_entry(i); const char *id; - snd_config_get_id(n, &id); + if (snd_config_get_id(n, &id) < 0) + continue; if (strcmp(id, "name") != 0) continue; snd_config_get_string(n, &type); diff --git a/src/topology/data.c b/src/topology/data.c index e2aa38c1..8fe2342d 100644 --- a/src/topology/data.c +++ b/src/topology/data.c @@ -653,8 +653,8 @@ static int parse_tuple_sets(snd_config_t *cfg, int err; if (snd_config_get_type(cfg) != SND_CONFIG_TYPE_COMPOUND) { - snd_config_get_id(cfg, &id); - SNDERR("error: compound type expected for %s", id); + if (snd_config_get_id(cfg, &id) >= 0) + SNDERR("error: compound type expected for %s", id); return -EINVAL; }