Various functions take as parameter an optional pointer. Pointer
should be guarded with non-NULL check before dereferencing.

Add non-NULL check before dereference of pointer.

Signed-off-by: Tobin C. Harding <m...@tobin.cc>
---
 drivers/mmc/core/sdio_io.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/core/sdio_io.c b/drivers/mmc/core/sdio_io.c
index 74195d7..3482314 100644
--- a/drivers/mmc/core/sdio_io.c
+++ b/drivers/mmc/core/sdio_io.c
@@ -373,7 +373,8 @@ u8 sdio_readb(struct sdio_func *func, unsigned int addr, 
int *err_ret)
        u8 val;
 
        if (!func) {
-               *err_ret = -EINVAL;
+               if (err_ret)
+                       *err_ret = -EINVAL;
                return 0xFF;
        }
 
@@ -407,7 +408,8 @@ void sdio_writeb(struct sdio_func *func, u8 b, unsigned int 
addr, int *err_ret)
        int ret;
 
        if (!func) {
-               *err_ret = -EINVAL;
+               if (err_ret)
+                       *err_ret = -EINVAL;
                return;
        }
 
@@ -635,7 +637,8 @@ unsigned char sdio_f0_readb(struct sdio_func *func, 
unsigned int addr,
        unsigned char val;
 
        if (!func) {
-               *err_ret = -EINVAL;
+               if (err_ret)
+                       *err_ret = -EINVAL;
                return 0xFF;
        }
 
@@ -673,7 +676,8 @@ void sdio_f0_writeb(struct sdio_func *func, unsigned char 
b, unsigned int addr,
        int ret;
 
        if (!func) {
-               *err_ret = -EINVAL;
+               if (err_ret)
+                       *err_ret = -EINVAL;
                return;
        }
 
-- 
2.7.4

Reply via email to