Merge remote-tracking branches 'asoc/topic/tegra', 'asoc/topic/tlv320aic23', 'asoc...
[sfrench/cifs-2.6.git] / sound / soc / soc-topology.c
index 3e9b1c0bb1ce3cb1864e1825ade56720803df289..002772e3ba2cb5f193ef35b4b96c8ee6eadc46d1 100644 (file)
@@ -495,12 +495,13 @@ static void remove_widget(struct snd_soc_component *comp,
                        struct snd_kcontrol *kcontrol = w->kcontrols[i];
                        struct soc_enum *se =
                                (struct soc_enum *)kcontrol->private_value;
+                       int j;
 
                        snd_ctl_remove(card, kcontrol);
 
                        kfree(se->dobj.control.dvalues);
-                       for (i = 0; i < se->items; i++)
-                               kfree(se->dobj.control.dtexts[i]);
+                       for (j = 0; j < se->items; j++)
+                               kfree(se->dobj.control.dtexts[j]);
 
                        kfree(se);
                }
@@ -933,6 +934,7 @@ static int soc_tplg_denum_create_texts(struct soc_enum *se,
                }
        }
 
+       se->texts = (const char * const *)se->dobj.control.dtexts;
        return 0;
 
 err: