blob: 419b4fd2a89eb77f4c6368bba2ec73135ec6e6f2 [file] [log] [blame]
From 01a832b775a035a6cc428b98c3c439269eb7b119 Mon Sep 17 00:00:00 2001
From: Dan Carpenter <dan.carpenter@oracle.com>
Date: Wed, 25 Sep 2019 14:06:24 +0300
Subject: [PATCH] ASoC: topology: Fix a signedness bug in
soc_tplg_dapm_widget_create()
commit 752c938a5c14b8cbf0ed3ffbfa637fb166255c3f upstream.
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>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
diff --git a/sound/soc/soc-topology.c b/sound/soc/soc-topology.c
index 3299ebb48c1a..47ffeb555fba 100644
--- a/sound/soc/soc-topology.c
+++ b/sound/soc/soc-topology.c
@@ -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 */
--
2.7.4