media: amphion: fix REVERSE_INULL issues reported by coverity
authorMing Qian <ming.qian@nxp.com>
Tue, 18 Jul 2023 09:50:10 +0000 (17:50 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Sep 2023 07:42:51 +0000 (09:42 +0200)
[ Upstream commit 79d3bafaecc13bccab1ebbd28a15e669c5a4cdaf ]

null-checking of a pointor is suggested before dereferencing it

Fixes: 9f599f351e86 ("media: amphion: add vpu core driver")
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/platform/amphion/venc.c

index e8cb22d..1df2b35 100644 (file)
@@ -278,7 +278,7 @@ static int venc_g_parm(struct file *file, void *fh, struct v4l2_streamparm *parm
 {
        struct vpu_inst *inst = to_inst(file);
        struct venc_t *venc = inst->priv;
-       struct v4l2_fract *timeperframe = &parm->parm.capture.timeperframe;
+       struct v4l2_fract *timeperframe;
 
        if (!parm)
                return -EINVAL;
@@ -289,6 +289,7 @@ static int venc_g_parm(struct file *file, void *fh, struct v4l2_streamparm *parm
        if (!vpu_helper_check_type(inst, parm->type))
                return -EINVAL;
 
+       timeperframe = &parm->parm.capture.timeperframe;
        parm->parm.capture.capability = V4L2_CAP_TIMEPERFRAME;
        parm->parm.capture.readbuffers = 0;
        timeperframe->numerator = venc->params.frame_rate.numerator;
@@ -301,7 +302,7 @@ static int venc_s_parm(struct file *file, void *fh, struct v4l2_streamparm *parm
 {
        struct vpu_inst *inst = to_inst(file);
        struct venc_t *venc = inst->priv;
-       struct v4l2_fract *timeperframe = &parm->parm.capture.timeperframe;
+       struct v4l2_fract *timeperframe;
        unsigned long n, d;
 
        if (!parm)
@@ -313,6 +314,7 @@ static int venc_s_parm(struct file *file, void *fh, struct v4l2_streamparm *parm
        if (!vpu_helper_check_type(inst, parm->type))
                return -EINVAL;
 
+       timeperframe = &parm->parm.capture.timeperframe;
        if (!timeperframe->numerator)
                timeperframe->numerator = venc->params.frame_rate.numerator;
        if (!timeperframe->denominator)