]> git.alsa-project.org Git - alsa-utils.git/commitdiff
topology: create Define subtree for command line defines only
authorJaroslav Kysela <perex@perex.cz>
Fri, 28 Jan 2022 17:01:03 +0000 (18:01 +0100)
committerJaroslav Kysela <perex@perex.cz>
Fri, 28 Jan 2022 17:03:08 +0000 (18:03 +0100)
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
topology/pre-processor.c

index a5ef7781de12aed622a429e4ba555e73709bf2e1..52782402ae47e2c620cb972964878cfbedf4debb 100644 (file)
@@ -253,6 +253,12 @@ static int pre_process_add_defines(struct tplg_pre_processor *tplg_pp, snd_confi
        int ret;
 
        ret = snd_config_search(from, "Define", &conf_defines);
+       if (ret == -ENOENT) {
+               if (tplg_pp->input_cfg == from && tplg_pp->define_cfg) {
+                       conf_defines = NULL;
+                       goto create;
+               }
+       }
        if (ret < 0)
                return ret;
 
@@ -265,6 +271,7 @@ static int pre_process_add_defines(struct tplg_pre_processor *tplg_pp, snd_confi
                tplg_pp->define_cfg_merged = conf_defines;
 
        if (tplg_pp->define_cfg_merged == NULL) {
+create:
                ret = snd_config_make_compound(&tplg_pp->define_cfg_merged, "Define", 0);
                if (ret < 0)
                        return ret;