Re: [PATCH] media: pvrusb2: fix parsing error

From: Tong Zhang
Date: Wed Aug 19 2020 - 17:27:16 EST


Hi Hans,
I just made another patch as suggested, I think I need some more work
on the commit log.
Please take a look and let me know -
Thanks,
- Tong

On Wed, Aug 19, 2020 at 10:38 AM Hans Verkuil <hverkuil@xxxxxxxxx> wrote:
>
> Hi Tong,
>
> On 16/08/2020 08:49, Tong Zhang wrote:
> > pvr2_std_str_to_id() returns 0 on failure and 1 on success,
> > however the caller is checking failure case using <0
> >
> > Signed-off-by: Tong Zhang <ztong0001@xxxxxxxxx>
> > ---
> > drivers/media/usb/pvrusb2/pvrusb2-hdw.c | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
> > index 1cfb7cf64131..db5aa66c1936 100644
> > --- a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
> > +++ b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
> > @@ -867,7 +867,8 @@ static int ctrl_std_sym_to_val(struct pvr2_ctrl *cptr,
> > int ret;
> > v4l2_std_id id;
> > ret = pvr2_std_str_to_id(&id,bufPtr,bufSize);
> > - if (ret < 0) return ret;
> > + if (ret == 0)
> > + return ret;
>
> But now you return 0 instead of an error when pvr2_std_str_to_id failed.
>
> Just do this:
>
> if (!pvr2_std_str_to_id(&id,bufPtr,bufSize))
> return -EINVAL;
>
> And you can drop the ret variable as well since that's no longer needed.
>
> Regards,
>
> Hans
>
> > if (mskp) *mskp = id;
> > if (valp) *valp = id;
> > return 0;
> >
>