ASoC: topology: Fix using uninitialized pointer

The original patch changed kcontrol_type to a pointer. In some goto
cases the pointer is assigned into a struct member as uninitialized and
this will cause a runtime error with UBSan even if it isn't a real bug.
So initialize the pointer to NULL.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Fixes: d29d41e28e ("ASoC: topology: Add support for multiple kcontrol types to a widget")
Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20210519100713.879958-1-jaska.uimonen@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Jaska Uimonen 2021-05-19 13:07:13 +03:00 committed by Mark Brown
parent 60339074c4
commit b9c035aa43
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -1422,7 +1422,7 @@ static int soc_tplg_dapm_widget_create(struct soc_tplg *tplg,
struct snd_soc_dapm_widget template, *widget;
struct snd_soc_tplg_ctl_hdr *control_hdr;
struct snd_soc_card *card = tplg->comp->card;
unsigned int *kcontrol_type;
unsigned int *kcontrol_type = NULL;
struct snd_kcontrol_new *kc;
int mixer_count = 0;
int bytes_count = 0;