|
@@ -590,9 +590,17 @@ struct snd_soc_component *snd_soc_rtdcom_lookup(struct snd_soc_pcm_runtime *rtd,
|
|
|
{
|
|
|
struct snd_soc_rtdcom_list *rtdcom;
|
|
|
|
|
|
+ if (!driver_name)
|
|
|
+ return NULL;
|
|
|
+
|
|
|
for_each_rtdcom(rtd, rtdcom) {
|
|
|
- if ((rtdcom->component->driver->name == driver_name) ||
|
|
|
- strcmp(rtdcom->component->driver->name, driver_name) == 0)
|
|
|
+ const char *component_name = rtdcom->component->driver->name;
|
|
|
+
|
|
|
+ if (!component_name)
|
|
|
+ continue;
|
|
|
+
|
|
|
+ if ((component_name == driver_name) ||
|
|
|
+ strcmp(component_name, driver_name) == 0)
|
|
|
return rtdcom->component;
|
|
|
}
|
|
|
|