mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 01:49:46 +00:00
ASoC: dapm: Make sure we have a card when displaying component widgets
commit 47325078f2 upstream.
The dummy component is reused for all cards so we special case and don't
bind it to any of them. This means that code like that displaying the
component widgets that tries to look at the card will crash. In the
future we will fix this by ensuring that the dummy component looks like
other components but that is invasive and so not suitable for a fix.
Instead add a special case check here.
Reported-by: Harry Pan <harry.pan@intel.com>
Suggested-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
c276b2c81f
commit
99070b6b51
@@ -2188,6 +2188,13 @@ static ssize_t dapm_widget_show_component(struct snd_soc_component *cmpnt,
|
||||
int count = 0;
|
||||
char *state = "not set";
|
||||
|
||||
/* card won't be set for the dummy component, as a spot fix
|
||||
* we're checking for that case specifically here but in future
|
||||
* we will ensure that the dummy component looks like others.
|
||||
*/
|
||||
if (!cmpnt->card)
|
||||
return 0;
|
||||
|
||||
list_for_each_entry(w, &cmpnt->card->widgets, list) {
|
||||
if (w->dapm != dapm)
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user