ASoC: Fix null pointer dereference for prtd pointer

Private data pointer may not be initialized before
access it in adsp_stream_cmd_put. NULL check for prtd
avoids the issue.

CRs-Fixed: 2250112
Change-Id: I0a033d7e867b183c329941b57b49232729191f1b
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
This commit is contained in:
Vatsal Bucha 2018-06-01 12:05:25 +05:30 committed by Gerrit - the friendly Code Review server
parent ffb86ea061
commit 2eb2e613df

View File

@ -686,6 +686,7 @@ static int msm_pcm_open(struct snd_pcm_substream *substream)
if (!prtd->audio_client) {
pr_info("%s: Could not allocate memory\n", __func__);
kfree(prtd);
prtd = NULL;
return -ENOMEM;
}
@ -1174,6 +1175,12 @@ static int msm_pcm_adsp_stream_cmd_put(struct snd_kcontrol *kcontrol,
}
prtd = substream->runtime->private_data;
if (prtd == NULL) {
pr_err("%s prtd is null.\n", __func__);
ret = -EINVAL;
goto done;
}
if (prtd->audio_client == NULL) {
pr_err("%s prtd is null.\n", __func__);
ret = -EINVAL;