pvr2_std_str_to_id() returns 0 on failure and 1 on success,
however the caller is checking failure case using <0

Co-developed-by: Hans Verkuil<hverk...@xs4all.nl>
Signed-off-by: Tong Zhang <ztong0...@gmail.com>
---

v2: return -EINVAL as suggested by Hans Verkuil<hverk...@xs4all.nl>.
I also rebased the code on v5.9-rc1.
v3: remove unused variable

 drivers/media/usb/pvrusb2/pvrusb2-hdw.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c 
b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
index 1cfb7cf64131..f4a727918e35 100644
--- a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
+++ b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
@@ -864,10 +864,9 @@ static int ctrl_std_sym_to_val(struct pvr2_ctrl *cptr,
                               const char *bufPtr,unsigned int bufSize,
                               int *mskp,int *valp)
 {
-       int ret;
        v4l2_std_id id;
-       ret = pvr2_std_str_to_id(&id,bufPtr,bufSize);
-       if (ret < 0) return ret;
+       if (!pvr2_std_str_to_id(&id, bufPtr, bufSize))
+               return -EINVAL;
        if (mskp) *mskp = id;
        if (valp) *valp = id;
        return 0;
-- 
2.25.1

Reply via email to