]> git.alsa-project.org Git - alsa-lib.git/commitdiff
add missing return value changes for snd_config_get_id() calls
authorJaroslav Kysela <jkysela@redhat.com>
Tue, 11 Nov 2025 15:01:17 +0000 (16:01 +0100)
committerJaroslav Kysela <perex@perex.cz>
Wed, 12 Nov 2025 14:36:29 +0000 (15:36 +0100)
Signed-off-by: Jaroslav Kysela <jkysela@redhat.com>
src/conf.c
src/pcm/pcm.c
src/topology/channel.c
src/topology/dapm.c
src/topology/data.c
src/topology/elem.c
src/topology/pcm.c

index 357d72ba7f8f3ca4ad44c79d748da70c666d6b64..ce34ff1027c0b189847074440fad602906392892 100644 (file)
@@ -4437,7 +4437,8 @@ int snd_config_hook_load_for_all_cards(snd_config_t *root, snd_config_t *config,
                        if (snd_config_search(root, fdriver, &n) >= 0) {
                                if (snd_config_get_string(n, &driver) < 0) {
                                        if (snd_config_get_type(n) == SND_CONFIG_TYPE_COMPOUND) {
-                                               snd_config_get_id(n, &driver);
+                                               if (snd_config_get_id(n, &driver) < 0)
+                                                       goto __err;
                                                goto __std;
                                        }
                                        goto __err;
index c8804f3b1c8df7a28c23508fb077a95c8e67af1d..a6f500cb526154f087b850d9c5d97d0de455a504 100644 (file)
@@ -2578,8 +2578,8 @@ static int snd_pcm_open_conf(snd_pcm_t **pcmp, const char *name,
 #endif
        if (snd_config_get_type(pcm_conf) != SND_CONFIG_TYPE_COMPOUND) {
                char *val;
-               id = NULL;
-               snd_config_get_id(pcm_conf, &id);
+               if (snd_config_get_id(pcm_conf, &id) < 0)
+                       id = NULL;
                val = NULL;
                snd_config_get_ascii(pcm_conf, &val);
                snd_error(PCM, "Invalid type for PCM %s%sdefinition (id: %s, value: %s)", name ? name : "", name ? " " : "", id, val);
index 2e001a5d8ef25fe2ef1bea6339194aa3ebba0c87..5a83e1464ad1ac466e643969e91114e66f5b9b01 100644 (file)
@@ -98,7 +98,8 @@ int tplg_parse_channel(snd_tplg_t *tplg, snd_config_t *cfg,
                return -EINVAL;
 
        channel += tplg->channel_idx;
-       snd_config_get_id(cfg, &id);
+       if (snd_config_get_id(cfg, &id) < 0)
+               return -EINVAL;
        tplg_dbg("\tChannel %s at index %d", id, tplg->channel_idx);
 
        channel_id = lookup_channel(id);
index bb7fdf6576a319c60d0f168968a6005d880cc8cb..ac4d6085ee73794ef90e975dcf8583e864a47e25 100644 (file)
@@ -381,7 +381,8 @@ int tplg_parse_dapm_graph(snd_tplg_t *tplg, snd_config_t *cfg,
                return -EINVAL;
        }
 
-       snd_config_get_id(cfg, &graph_id);
+       if (snd_config_get_id(cfg, &graph_id) < 0)
+               return -EINVAL;
 
        snd_config_for_each(i, next, cfg) {
                const char *id;
index b1a2e23ad90d98f11a280970046fe4bfe9a49fb7..6869e3eb3eb1b0154c9b407d0e6e3548398e8e5d 100644 (file)
@@ -792,7 +792,8 @@ static int parse_tuple_set(snd_config_t *cfg,
        unsigned int tuple_val;
        int type, ival;
 
-       snd_config_get_id(cfg, &id);
+       if (snd_config_get_id(cfg, &id) < 0)
+               return -EINVAL;
 
        type = get_tuple_type(id);
        if (type < 0) {
index feaeafbb917f5655b2f2f177cbe5b243c5fc90e3..4708d2f7a939fc8f793b54a6c9ff437370513d4f 100644 (file)
@@ -423,7 +423,10 @@ struct tplg_elem* tplg_elem_new_common(snd_tplg_t *tplg,
 
        /* do we get name from cfg */
        if (cfg) {
-               snd_config_get_id(cfg, &id);
+               if (snd_config_get_id(cfg, &id) < 0) {
+                       free(elem);
+                       return NULL;
+               }
                snd_strlcpy(elem->id, id, SNDRV_CTL_ELEM_ID_NAME_MAXLEN);
                elem->id[SNDRV_CTL_ELEM_ID_NAME_MAXLEN - 1] = 0;
                /* as we insert new elem based on the index value, move index
index db06d0419673a2adfcb989508334c4e323ba580b..3cfc631e3d6d13f88982ae524f33052e40b02110 100644 (file)
@@ -627,7 +627,8 @@ static int tplg_parse_streams(snd_tplg_t *tplg ATTRIBUTE_UNUSED,
        const char *id, *value;
        int stream;
 
-       snd_config_get_id(cfg, &id);
+       if (snd_config_get_id(cfg, &id) < 0)
+               return -EINVAL;
 
        tplg_dbg("\t%s:", id);
 
@@ -750,7 +751,8 @@ static int tplg_parse_fe_dai(snd_tplg_t *tplg ATTRIBUTE_UNUSED,
        const char *id;
        unsigned int dai_id;
 
-       snd_config_get_id(cfg, &id);
+       if (snd_config_get_id(cfg, &id) < 0)
+               return -EINVAL;
        tplg_dbg("\t\tFE DAI %s:", id);
        snd_strlcpy(pcm->dai_name, id, SNDRV_CTL_ELEM_ID_NAME_MAXLEN);