• Dan Carpenter's avatar
    generic-adc-battery: Fix forever loop in gab_remove() · 64d26f22
    Dan Carpenter authored
    There is a forever loop calling iio_channel_release() because the
    "chan < " part of the "chan < ARRAY_SIZE()" is missing.  This is in both
    the error handling on probe and also in the remove function.
    
    The other thing is that it's possible for some of the elements of the
    adc_bat->channel[chan] array to be an ERR_PTR().  I've changed them to be
    NULL instead.  We're still not allowed to pass NULLs to
    iio_channel_release() so I've added a check.
    
    Finally, I removed an unused "chan = ARRAY_SIZE(gab_chan_name);" statement
    as a small cleanup.
    Signed-off-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: default avatarAnton Vorontsov <anton@enomsg.org>
    64d26f22
generic-adc-battery.c 10.7 KB