iio: iio get channel and get event error checking
authorLay, Kuan Loon <kuan.loon.lay@intel.com>
Tue, 20 Oct 2015 10:59:30 +0000 (18:59 +0800)
committerBrendan Le Foll <brendan.le.foll@intel.com>
Tue, 15 Dec 2015 10:42:06 +0000 (10:42 +0000)
Signed-off-by: Lay, Kuan Loon <kuan.loon.lay@intel.com>
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
src/iio/iio.c

index 16bf575..45427ff 100644 (file)
@@ -90,6 +90,9 @@ mraa_iio_get_channel_data(mraa_iio_context dev)
         }
     }
     dev->chan_num = chan_num;
+       //no need proceed if no channel found
+       if (chan_num == 0)
+               return MRAA_SUCCESS;
     mraa_iio_channel* chan;
     dev->channels = calloc(chan_num, sizeof(mraa_iio_channel));
     seekdir(dir, 0);
@@ -304,6 +307,9 @@ mraa_iio_get_event_data(mraa_iio_context dev)
             }
         }
         dev->event_num = event_num;
+               //no need proceed if no event found
+               if (event_num == 0)
+                       return MRAA_SUCCESS;
         mraa_iio_event* event;
                dev->events = calloc(event_num, sizeof(mraa_iio_event));
                if ( dev->events == NULL)