summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Verkuil2018-02-12 12:45:32 +0100
committerMauro Carvalho Chehab2018-02-26 14:14:13 +0100
commited356f110403f6acc64dcbbbfdc38662ab9b06c2 (patch)
tree94b7a86493646282d82134a70dbfe5954568279f
parentmedia: em28xx: use %*phC to print small buffers (diff)
downloadkernel-qcow2-linux-ed356f110403f6acc64dcbbbfdc38662ab9b06c2.tar.gz
kernel-qcow2-linux-ed356f110403f6acc64dcbbbfdc38662ab9b06c2.tar.xz
kernel-qcow2-linux-ed356f110403f6acc64dcbbbfdc38662ab9b06c2.zip
media: vivid: check if the cec_adapter is valid
If CEC is not enabled for the vivid driver, then the adap pointer is NULL and 'adap->phys_addr' will fail. Cc: <stable@vger.kernel.org> # for v4.12 and up Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
-rw-r--r--drivers/media/platform/vivid/vivid-vid-common.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/platform/vivid/vivid-vid-common.c b/drivers/media/platform/vivid/vivid-vid-common.c
index cc67f403a808..e5914be0e12d 100644
--- a/drivers/media/platform/vivid/vivid-vid-common.c
+++ b/drivers/media/platform/vivid/vivid-vid-common.c
@@ -862,7 +862,8 @@ int vidioc_g_edid(struct file *file, void *_fh,
return -EINVAL;
if (edid->start_block + edid->blocks > dev->edid_blocks)
edid->blocks = dev->edid_blocks - edid->start_block;
- cec_set_edid_phys_addr(dev->edid, dev->edid_blocks * 128, adap->phys_addr);
+ if (adap)
+ cec_set_edid_phys_addr(dev->edid, dev->edid_blocks * 128, adap->phys_addr);
memcpy(edid->edid, dev->edid + edid->start_block * 128, edid->blocks * 128);
return 0;
}