Bläddra i källkod

Merge "msm_common.c: fix dereference of pointer 'kctl_pdata' before NULL check"

qctecmdr 4 år sedan
förälder
incheckning
d7a73f35b7
1 ändrade filer med 5 tillägg och 2 borttagningar
  1. 5 2
      asoc/msm_common.c

+ 5 - 2
asoc/msm_common.c

@@ -373,8 +373,8 @@ int msm_channel_map_get(struct snd_kcontrol *kcontrol,
 {
 	struct chmap_pdata *kctl_pdata =
 			(struct chmap_pdata *)kcontrol->private_data;
-	struct snd_soc_dai *codec_dai = kctl_pdata->dai;
-	int backend_id = kctl_pdata->id;
+	struct snd_soc_dai *codec_dai = NULL;
+	int backend_id = 0;
 	uint32_t rx_ch[MAX_PORT], tx_ch[MAX_PORT];
 	uint32_t rx_ch_cnt = 0, tx_ch_cnt = 0;
 	uint32_t *chmap_data = NULL;
@@ -385,6 +385,9 @@ int msm_channel_map_get(struct snd_kcontrol *kcontrol,
 		return -EINVAL;
 	}
 
+        codec_dai = kctl_pdata->dai;
+        backend_id = kctl_pdata->id;
+
 	ret = snd_soc_dai_get_channel_map(codec_dai,
 			&tx_ch_cnt, tx_ch, &rx_ch_cnt, rx_ch);
 	if (ret || (tx_ch_cnt == 0 && rx_ch_cnt == 0)) {