Commit 5a7b2aab authored by Mark Brown's avatar Mark Brown

ASoC: core: Make snd_soc_find_component() more robust

There are some use cases where you're checking for a lot of things on a
card and it makes sense that you might end up trying to call
snd_soc_find_component() without either a name or an of_node.  Currently
in that case we try to dereference the name and crash but it's more
useful to allow the caller to just treat that as a case where we don't
find anything, that error handling will already exist.

Inspired by a patch from Ajit Pandey fixing some callers.

Fixes: 8780cf11 ("ASoC: soc-core: defer card probe until all component is added to list")
Reported-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 09ac6a81
...@@ -742,7 +742,7 @@ static struct snd_soc_component *soc_find_component( ...@@ -742,7 +742,7 @@ static struct snd_soc_component *soc_find_component(
if (of_node) { if (of_node) {
if (component->dev->of_node == of_node) if (component->dev->of_node == of_node)
return component; return component;
} else if (strcmp(component->name, name) == 0) { } else if (name && strcmp(component->name, name) == 0) {
return component; return component;
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment