Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 748a29b9 authored by Laxminath Kasam's avatar Laxminath Kasam Committed by Gerrit - the friendly Code Review server
Browse files

asoc: Add null check for kctl private_data in volume controls



In platform driver volume controls, add null check
for kctl private data before access.

CRs-Fixed: 2611397
Change-Id: I49bdac2bb780a7116e54c20bf5f0d01f13a53165
Signed-off-by: default avatarLaxminath Kasam <lkasam@codeaurora.org>
parent 93afa626
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -569,11 +569,15 @@ static int msm_pcm_volume_ctl_get(struct snd_kcontrol *kcontrol,
{
	int rc = 0;
	struct snd_pcm_volume *vol = snd_kcontrol_chip(kcontrol);
	struct snd_pcm_substream *substream =
		vol->pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream;
	struct snd_pcm_substream *substream = NULL;
	struct msm_pcm_loopback *prtd;

	pr_debug("%s\n", __func__);
	if (!vol) {
		pr_err("%s: vol is NULL\n", __func__);
		return -ENODEV;
	}
	substream = vol->pcm->streams[SNDRV_PCM_STREAM_PLAYBACK].substream;
	if ((!substream) || (!substream->runtime)) {
		pr_debug("%s substream or runtime not found\n", __func__);
		rc = -ENODEV;
+6 −2
Original line number Diff line number Diff line
@@ -722,13 +722,17 @@ static int msm_pcm_volume_ctl_get(struct snd_kcontrol *kcontrol,
{
	struct snd_pcm_volume *vol = snd_kcontrol_chip(kcontrol);
	struct msm_plat_data *pdata = NULL;
	struct snd_pcm_substream *substream =
		vol->pcm->streams[vol->stream].substream;
	struct snd_pcm_substream *substream = NULL;
	struct snd_soc_pcm_runtime *soc_prtd = NULL;
	struct snd_soc_component *component = NULL;
	struct msm_audio *prtd;

	pr_debug("%s\n", __func__);
	if (!vol) {
		pr_err("%s: vol is NULL\n", __func__);
		return -ENODEV;
	}
	substream = vol->pcm->streams[vol->stream].substream;
	if (!substream) {
		pr_err("%s substream not found\n", __func__);
		return -ENODEV;
+6 −2
Original line number Diff line number Diff line
@@ -1520,13 +1520,17 @@ static int msm_pcm_volume_ctl_get(struct snd_kcontrol *kcontrol,
{
	struct snd_pcm_volume *vol = snd_kcontrol_chip(kcontrol);
	struct msm_plat_data *pdata = NULL;
	struct snd_pcm_substream *substream =
		vol->pcm->streams[vol->stream].substream;
	struct snd_pcm_substream *substream = NULL;
	struct snd_soc_pcm_runtime *soc_prtd = NULL;
	struct snd_soc_component *component = NULL;
	struct msm_audio *prtd;

	pr_debug("%s\n", __func__);
	if (!vol) {
		pr_err("%s: vol is NULL\n", __func__);
		return -ENODEV;
	}
	substream = vol->pcm->streams[vol->stream].substream;
	if (!substream) {
		pr_err("%s substream not found\n", __func__);
		return -ENODEV;