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

Commit 3f2cb16d authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "asoc: add NULL check before access pointer"

parents 50398b5b 8a2a1041
Loading
Loading
Loading
Loading
+21 −8
Original line number Original line Diff line number Diff line
@@ -363,12 +363,17 @@ static int msm_compr_set_volume(struct snd_compr_stream *cstream,
	}
	}
	rtd = cstream->private_data;
	rtd = cstream->private_data;
	prtd = cstream->runtime->private_data;
	prtd = cstream->runtime->private_data;
	component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);


	if (!rtd || !component || !prtd || !prtd->audio_client) {
	if (!rtd || !prtd || !prtd->audio_client) {
		pr_err("%s: invalid rtd, prtd or audio client", __func__);
		pr_err("%s: invalid rtd, prtd or audio client", __func__);
		return rc;
		return rc;
	}
	}
	component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);
	if (!component) {
		pr_err("%s: invalid component\n", __func__);
		return rc;
	}

	pdata = snd_soc_component_get_drvdata(component);
	pdata = snd_soc_component_get_drvdata(component);


	if (prtd->compr_passthr != LEGACY_PCM) {
	if (prtd->compr_passthr != LEGACY_PCM) {
@@ -1810,12 +1815,16 @@ static int msm_compr_playback_free(struct snd_compr_stream *cstream)
	}
	}
	runtime = cstream->runtime;
	runtime = cstream->runtime;
	soc_prtd = cstream->private_data;
	soc_prtd = cstream->private_data;
	component = snd_soc_rtdcom_lookup(soc_prtd, DRV_NAME);
	if (!runtime || !soc_prtd) {
	if (!runtime || !soc_prtd || !component) {
		pr_err("%s runtime or soc_prtd is null\n",
		pr_err("%s runtime or soc_prtd or component is null\n",
			__func__);
			__func__);
		return 0;
		return 0;
	}
	}
	component = snd_soc_rtdcom_lookup(soc_prtd, DRV_NAME);
	if (!component) {
		pr_err("%s component is null\n", __func__);
		return 0;
	}
	prtd = runtime->private_data;
	prtd = runtime->private_data;
	if (!prtd) {
	if (!prtd) {
		pr_err("%s prtd is null\n", __func__);
		pr_err("%s prtd is null\n", __func__);
@@ -1913,12 +1922,16 @@ static int msm_compr_capture_free(struct snd_compr_stream *cstream)
	}
	}
	runtime = cstream->runtime;
	runtime = cstream->runtime;
	soc_prtd = cstream->private_data;
	soc_prtd = cstream->private_data;
	if (!runtime || !soc_prtd) {
		pr_err("%s runtime or soc_prtd is null\n", __func__);
		return 0;
	}
	component = snd_soc_rtdcom_lookup(soc_prtd, DRV_NAME);
	component = snd_soc_rtdcom_lookup(soc_prtd, DRV_NAME);
	if (!runtime || !soc_prtd || !component) {
	if (!component) {
		pr_err("%s runtime or soc_prtd or component is null\n",
		pr_err("%s component is null\n", __func__);
			__func__);
		return 0;
		return 0;
	}
	}

	prtd = runtime->private_data;
	prtd = runtime->private_data;
	if (!prtd) {
	if (!prtd) {
		pr_err("%s prtd is null\n", __func__);
		pr_err("%s prtd is null\n", __func__);
+16 −0
Original line number Original line Diff line number Diff line
@@ -435,7 +435,15 @@ static int msm_transcode_loopback_set_params(struct snd_compr_stream *cstream,
	mutex_lock(&trans->lock);
	mutex_lock(&trans->lock);


	rtd = snd_pcm_substream_chip(cstream);
	rtd = snd_pcm_substream_chip(cstream);
	if (!rtd) {
		pr_err("%s: rtd is NULL\n", __func__);
		return -EINVAL;
	}
	component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);
	component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);
	if (!component) {
		pr_err("%s: component is NULL\n", __func__);
		return -EINVAL;
	}
	pdata = snd_soc_component_get_drvdata(component);
	pdata = snd_soc_component_get_drvdata(component);


	if (cstream->direction == SND_COMPRESS_PLAYBACK) {
	if (cstream->direction == SND_COMPRESS_PLAYBACK) {
@@ -606,7 +614,15 @@ static int msm_transcode_loopback_set_metadata(struct snd_compr_stream *cstream,
	}
	}


	rtd = snd_pcm_substream_chip(cstream);
	rtd = snd_pcm_substream_chip(cstream);
	if (!rtd) {
		pr_err("%s: rtd is NULL\n", __func__);
		return -EINVAL;
	}
	component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);
	component = snd_soc_rtdcom_lookup(rtd, DRV_NAME);
	if (!component) {
		pr_err("%s: component is NULL\n", __func__);
		return -EINVAL;
	}
	pdata = snd_soc_component_get_drvdata(component);
	pdata = snd_soc_component_get_drvdata(component);


	prtd = cstream->runtime->private_data;
	prtd = cstream->runtime->private_data;