OSDN Git Service

media: sr030pc30: remove NULL in sr030pc30_base_config()
authorDan Carpenter <dan.carpenter@oracle.com>
Fri, 31 Aug 2018 13:20:18 +0000 (09:20 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Mon, 17 Sep 2018 19:19:10 +0000 (15:19 -0400)
This code doesn't check for NULL consistently and it generates a Smatch
warning:

    drivers/media/i2c/sr030pc30.c:575 sr030pc30_base_config()
    error: we previously assumed 'info->pdata' could be null (see line 572)

Fortunately, "info->pdata" can't be NULL to that check can be removed.
The other thing is that if "ret" is an error code here, then we don't
want to do the next call to cam_i2c_write(), so actually let's flip that
test around and return the error.  This is more of a theoretical issue
than something which is likely to affect real life.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/i2c/sr030pc30.c

index 3d3fb1c..11f6c7a 100644 (file)
@@ -569,7 +569,7 @@ static int sr030pc30_base_config(struct v4l2_subdev *sd)
        if (!ret)
                ret = sr030pc30_pwr_ctrl(sd, false, false);
 
-       if (!ret && !info->pdata)
+       if (ret)
                return ret;
 
        expmin = EXPOS_MIN_MS * info->pdata->clk_rate / (8 * 1000);