ASoC: hdac_hdmi: Potential NULL deref in hdac_hdmi_get_spk_alloc()
authorDan Carpenter <dan.carpenter@oracle.com>
Tue, 3 May 2016 07:42:58 +0000 (10:42 +0300)
committerMark Brown <broonie@kernel.org>
Tue, 3 May 2016 16:30:13 +0000 (17:30 +0100)
We intended || here instead of &&.  The original code potentially leads
to a NULL dereference.

Fixes: 2889099eb8cd ('ASoC: hdac_hdmi: Register chmap controls and ops')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewd-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Tested-by: Sachin Mokashi <sachinx.mokashi@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/hdac_hdmi.c

index 0ed39753c871e83cefac22cef6ef7f6e4abb939a..f1170e06023045488aa167af60216832a7087de7 100644 (file)
@@ -1614,7 +1614,7 @@ static int hdac_hdmi_get_spk_alloc(struct hdac_device *hdac, int pcm_idx)
        struct hdac_hdmi_pcm *pcm = get_hdmi_pcm_from_id(hdmi, pcm_idx);
        struct hdac_hdmi_pin *pin = pcm->pin;
 
-       if (!pin && !pin->eld.eld_valid)
+       if (!pin || !pin->eld.eld_valid)
                return 0;
 
        return pin->eld.info.spk_alloc;