|
@@ -513,7 +513,7 @@ static void remove_widget(struct snd_soc_component *comp,
|
|
|
*/
|
|
|
if (dobj->widget.kcontrol_type == SND_SOC_TPLG_TYPE_ENUM) {
|
|
|
/* enumerated widget mixer */
|
|
|
- for (i = 0; i < w->num_kcontrols; i++) {
|
|
|
+ for (i = 0; w->kcontrols != NULL && i < w->num_kcontrols; i++) {
|
|
|
struct snd_kcontrol *kcontrol = w->kcontrols[i];
|
|
|
struct soc_enum *se =
|
|
|
(struct soc_enum *)kcontrol->private_value;
|
|
@@ -530,7 +530,7 @@ static void remove_widget(struct snd_soc_component *comp,
|
|
|
}
|
|
|
} else {
|
|
|
/* volume mixer or bytes controls */
|
|
|
- for (i = 0; i < w->num_kcontrols; i++) {
|
|
|
+ for (i = 0; w->kcontrols != NULL && i < w->num_kcontrols; i++) {
|
|
|
struct snd_kcontrol *kcontrol = w->kcontrols[i];
|
|
|
|
|
|
if (dobj->widget.kcontrol_type
|