diff options
author | Joo Aun Saw <jasaw@dius.com.au> | 2015-07-25 01:23:28 +1000 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2015-08-08 19:51:39 +0100 |
commit | 6b20f40679108e3c04e9bdb3d719e364ec29289e (patch) | |
tree | 7559c86e74bccf6b8121cbe604f187e3bcd784da /tools/iio | |
parent | bdb25b0af8bd225ddf82083d767fada56fb2c1ae (diff) | |
download | op-kernel-dev-6b20f40679108e3c04e9bdb3d719e364ec29289e.zip op-kernel-dev-6b20f40679108e3c04e9bdb3d719e364ec29289e.tar.gz |
tools: iio: Set caller's ci_array pointer to NULL after free
On error, caller's ci_array is freed and set to NULL to avoid
potential double free if some other user of this code is not
sufficiently careful. Counter is reset to zero for consistency.
Signed-off-by: Joo Aun Saw <jasaw@dius.com.au>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'tools/iio')
-rw-r--r-- | tools/iio/iio_utils.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/iio/iio_utils.c b/tools/iio/iio_utils.c index 4bbd6e7..8475b83 100644 --- a/tools/iio/iio_utils.c +++ b/tools/iio/iio_utils.c @@ -526,6 +526,8 @@ error_cleanup_array: free((*ci_array)[i].generic_name); } free(*ci_array); + *ci_array = NULL; + *counter = 0; error_close_dir: if (dp) if (closedir(dp) == -1) |