aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/media/usb/pwc/pwc-ctrl.c
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-04-06 18:39:02 +0200
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>2020-04-21 13:20:33 +0200
commitc943b6947f459189419114682ac343fc1e22a954 (patch)
tree6154ea3f3095a748ba5bbf5b98efb76fba1c5aae /drivers/media/usb/pwc/pwc-ctrl.c
parentmedia: imx: utils: Introduce PIXFMT_SEL_IPU (diff)
downloadwireguard-linux-c943b6947f459189419114682ac343fc1e22a954.tar.xz
wireguard-linux-c943b6947f459189419114682ac343fc1e22a954.zip
media: imx: utils: Make imx_media_pixfmt handle variable number of codes
The imx_media_pixfmt structures include a codes member that stores media bus codes as a fixed array of 4 integers. The functions dealing with the imx_media_pixfmt structures assume that the array of codes is terminated by a 0 element. This mechanism is fragile, as demonstrated by several instances of the structure containing 4 non-zero codes. Fix this by turning the array into a pointer, and providing an IMX_BUS_FMTS macro to initialize the codes member with a guaranteed 0 element at the end. [Fixed a NULL deref of the codes pointer in a couple places] [Added more comments for the struct imx_media_pixfmt members, including a bold NOTE! for future developers that codes pointer is NULL for the in-memory-only formats] Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Steve Longerbeam <slongerbeam@gmail.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'drivers/media/usb/pwc/pwc-ctrl.c')
0 files changed, 0 insertions, 0 deletions