ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry
If we don't find any pcm, pcm will point at address at an offset from the the list head and not a meaningful structure. Fix this by returning correct pcm if found and NULL if not. Found with coccinelle. Signed-off-by: Amadeusz Sławiński <amadeuszx.slawinski@linux.intel.com> Link: https://lore.kernel.org/r/20200415162849.308-1-amadeuszx.slawinski@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Родитель
5bd70440cb
Коммит
326b509238
|
@ -142,14 +142,14 @@ static struct hdac_hdmi_pcm *
|
||||||
hdac_hdmi_get_pcm_from_cvt(struct hdac_hdmi_priv *hdmi,
|
hdac_hdmi_get_pcm_from_cvt(struct hdac_hdmi_priv *hdmi,
|
||||||
struct hdac_hdmi_cvt *cvt)
|
struct hdac_hdmi_cvt *cvt)
|
||||||
{
|
{
|
||||||
struct hdac_hdmi_pcm *pcm = NULL;
|
struct hdac_hdmi_pcm *pcm;
|
||||||
|
|
||||||
list_for_each_entry(pcm, &hdmi->pcm_list, head) {
|
list_for_each_entry(pcm, &hdmi->pcm_list, head) {
|
||||||
if (pcm->cvt == cvt)
|
if (pcm->cvt == cvt)
|
||||||
break;
|
return pcm;
|
||||||
}
|
}
|
||||||
|
|
||||||
return pcm;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void hdac_hdmi_jack_report(struct hdac_hdmi_pcm *pcm,
|
static void hdac_hdmi_jack_report(struct hdac_hdmi_pcm *pcm,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче