|
@@ -3913,11 +3913,12 @@ static inline char *fmt_multiple_name(struct device *dev,
|
|
*/
|
|
*/
|
|
static void snd_soc_unregister_dais(struct snd_soc_component *component)
|
|
static void snd_soc_unregister_dais(struct snd_soc_component *component)
|
|
{
|
|
{
|
|
- struct snd_soc_dai *dai;
|
|
|
|
|
|
+ struct snd_soc_dai *dai, *_dai;
|
|
|
|
|
|
- list_for_each_entry(dai, &component->dai_list, list) {
|
|
|
|
|
|
+ list_for_each_entry_safe(dai, _dai, &component->dai_list, list) {
|
|
dev_dbg(component->dev, "ASoC: Unregistered DAI '%s'\n",
|
|
dev_dbg(component->dev, "ASoC: Unregistered DAI '%s'\n",
|
|
dai->name);
|
|
dai->name);
|
|
|
|
+ list_del(&dai->list);
|
|
kfree(dai->name);
|
|
kfree(dai->name);
|
|
kfree(dai);
|
|
kfree(dai);
|
|
}
|
|
}
|