summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil-cisco@xs4all.nl>2018-11-09 08:37:44 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-01-09 17:14:51 +0100
commitcd1f0770d2772ebfab5678725a55b479465558a0 (patch)
treed1f941fa5f6a8fda259ab366473700c5a411be1e
parent5110d0b4c2319e9cc300271525b197af201df2bf (diff)
downloadlinux-cd1f0770d2772ebfab5678725a55b479465558a0.tar.gz
linux-cd1f0770d2772ebfab5678725a55b479465558a0.tar.bz2
linux-cd1f0770d2772ebfab5678725a55b479465558a0.zip
media: vivid: free bitmap_cap when updating std/timings/etc.
commit 560ccb75c2caa6b1039dec1a53cd2ef526f5bf03 upstream. When vivid_update_format_cap() is called it should free any overlay bitmap since the compose size will change. Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Reported-by: syzbot+0cc8e3cc63ca373722c6@syzkaller.appspotmail.com Cc: <stable@vger.kernel.org> # for v3.18 and up Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/media/platform/vivid/vivid-vid-cap.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/platform/vivid/vivid-vid-cap.c b/drivers/media/platform/vivid/vivid-vid-cap.c
index 01419455e545..a7a366093524 100644
--- a/drivers/media/platform/vivid/vivid-vid-cap.c
+++ b/drivers/media/platform/vivid/vivid-vid-cap.c
@@ -455,6 +455,8 @@ void vivid_update_format_cap(struct vivid_dev *dev, bool keep_controls)
tpg_s_rgb_range(&dev->tpg, v4l2_ctrl_g_ctrl(dev->rgb_range_cap));
break;
}
+ vfree(dev->bitmap_cap);
+ dev->bitmap_cap = NULL;
vivid_update_quality(dev);
tpg_reset_source(&dev->tpg, dev->src_rect.width, dev->src_rect.height, dev->field_cap);
dev->crop_cap = dev->src_rect;