mfd: max8998: Fix potential NULL pointer dereference
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Wed, 5 Jul 2017 05:50:54 +0000 (07:50 +0200)
committerLee Jones <lee.jones@linaro.org>
Tue, 5 Sep 2017 07:46:00 +0000 (08:46 +0100)
if 'max8998_i2c_parse_dt_pdata() fails (when out of memory), a NULL
pointer dereference will occur in the error handling code.

Return directly instead.

Fixes: ee999fb3f17f("mfd: max8998: Add support for Device Tree")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/max8998.c

index 4c33b8063bc32c99e5232735c847111efd0c7efe..b1d3f70782d9d7d2fd60b373a170662490892ed9 100644 (file)
@@ -192,10 +192,8 @@ static int max8998_i2c_probe(struct i2c_client *i2c,
 
        if (IS_ENABLED(CONFIG_OF) && i2c->dev.of_node) {
                pdata = max8998_i2c_parse_dt_pdata(&i2c->dev);
-               if (IS_ERR(pdata)) {
-                       ret = PTR_ERR(pdata);
-                       goto err;
-               }
+               if (IS_ERR(pdata))
+                       return PTR_ERR(pdata);
        }
 
        i2c_set_clientdata(i2c, max8998);