From: Amadeusz Sławiński Date: Thu, 2 Jun 2022 13:57:57 +0000 (+0200) Subject: ASoC: SOF: Fix potential NULL pointer dereference X-Git-Tag: v5.19-rc2~23^2~2^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2fe08216fda33bbc1f80133b8fd560ffd094b987;p=thirdparty%2Flinux.git ASoC: SOF: Fix potential NULL pointer dereference Cleanup path for sof_prepare_widgets_in_path() should check if unprepare callback exists before calling it, instead it checks if it does not exist. Fix the check. Signed-off-by: Amadeusz Sławiński Reviewed-by: Ranjani Sridharan Link: https://lore.kernel.org/r/20220602135757.3335351-1-amadeuszx.slawinski@linux.intel.com Signed-off-by: Mark Brown --- diff --git a/sound/soc/sof/sof-audio.c b/sound/soc/sof/sof-audio.c index 8d740635a4bb8..28976098a89e7 100644 --- a/sound/soc/sof/sof-audio.c +++ b/sound/soc/sof/sof-audio.c @@ -318,7 +318,7 @@ sink_prepare: p->walking = false; if (ret < 0) { /* unprepare the source widget */ - if (!widget_ops[widget->id].ipc_unprepare && swidget->prepared) { + if (widget_ops[widget->id].ipc_unprepare && swidget->prepared) { widget_ops[widget->id].ipc_unprepare(swidget); swidget->prepared = false; }