diff options
Diffstat (limited to 'tools/iio')
-rw-r--r-- | tools/iio/generic_buffer.c | 8 | ||||
-rw-r--r-- | tools/iio/iio_utils.c | 4 |
2 files changed, 10 insertions, 2 deletions
diff --git a/tools/iio/generic_buffer.c b/tools/iio/generic_buffer.c index 7859ee9a46b2..0410948e23c2 100644 --- a/tools/iio/generic_buffer.c +++ b/tools/iio/generic_buffer.c | |||
@@ -255,7 +255,7 @@ int main(int argc, char **argv) | |||
255 | "%siio:device%d/buffer", iio_dir, dev_num); | 255 | "%siio:device%d/buffer", iio_dir, dev_num); |
256 | if (ret < 0) { | 256 | if (ret < 0) { |
257 | ret = -ENOMEM; | 257 | ret = -ENOMEM; |
258 | goto error_free_triggername; | 258 | goto error_free_channels; |
259 | } | 259 | } |
260 | 260 | ||
261 | if (!notrigger) { | 261 | if (!notrigger) { |
@@ -351,6 +351,12 @@ error_free_data: | |||
351 | free(data); | 351 | free(data); |
352 | error_free_buf_dir_name: | 352 | error_free_buf_dir_name: |
353 | free(buf_dir_name); | 353 | free(buf_dir_name); |
354 | error_free_channels: | ||
355 | for (i = num_channels - 1; i >= 0; i--) { | ||
356 | free(channels[i].name); | ||
357 | free(channels[i].generic_name); | ||
358 | } | ||
359 | free(channels); | ||
354 | error_free_triggername: | 360 | error_free_triggername: |
355 | if (datardytrigger) | 361 | if (datardytrigger) |
356 | free(trigger_name); | 362 | free(trigger_name); |
diff --git a/tools/iio/iio_utils.c b/tools/iio/iio_utils.c index f879ad7b88bc..6daf98fdde1a 100644 --- a/tools/iio/iio_utils.c +++ b/tools/iio/iio_utils.c | |||
@@ -410,8 +410,10 @@ int build_channel_array(const char *device_dir, | |||
410 | return 0; | 410 | return 0; |
411 | 411 | ||
412 | error_cleanup_array: | 412 | error_cleanup_array: |
413 | for (i = count - 1; i >= 0; i--) | 413 | for (i = count - 1; i >= 0; i--) { |
414 | free((*ci_array)[i].name); | 414 | free((*ci_array)[i].name); |
415 | free((*ci_array)[i].generic_name); | ||
416 | } | ||
415 | free(*ci_array); | 417 | free(*ci_array); |
416 | error_close_dir: | 418 | error_close_dir: |
417 | closedir(dp); | 419 | closedir(dp); |