OSDN Git Service

ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create()
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 25 Sep 2019 11:06:24 +0000 (14:06 +0300)
committerMark Brown <broonie@kernel.org>
Thu, 26 Sep 2019 15:22:40 +0000 (08:22 -0700)
The "template.id" variable is an enum and in this context GCC will
treat it as an unsigned int so it can never be less than zero.

Fixes: 8a9782346dcc ("ASoC: topology: Add topology core")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Link: https://lore.kernel.org/r/20190925110624.GR3264@mwanda
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/soc-topology.c

index b869071..c25939c 100644 (file)
@@ -1588,7 +1588,7 @@ static int soc_tplg_dapm_widget_create(struct soc_tplg *tplg,
 
        /* map user to kernel widget ID */
        template.id = get_widget_id(le32_to_cpu(w->id));
-       if (template.id < 0)
+       if ((int)template.id < 0)
                return template.id;
 
        /* strings are allocated here, but used and freed by the widget */