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>
This commit is contained in:
Joo Aun Saw 2015-07-25 01:23:28 +10:00 committed by Jonathan Cameron
parent bdb25b0af8
commit 6b20f40679

View File

@ -526,6 +526,8 @@ int build_channel_array(const char *device_dir,
free((*ci_array)[i].generic_name);
}
free(*ci_array);
*ci_array = NULL;
*counter = 0;
error_close_dir:
if (dp)
if (closedir(dp) == -1)