diff --git a/ompi/mca/fcoll/static/fcoll_static_file_write_all.c b/ompi/mca/fcoll/static/fcoll_static_file_write_all.c index 8e8e08c33c..07f57db211 100644 --- a/ompi/mca/fcoll/static/fcoll_static_file_write_all.c +++ b/ompi/mca/fcoll/static/fcoll_static_file_write_all.c @@ -975,12 +975,12 @@ exit: decoded_iov = NULL; } - if (my_aggregator == fh->f_rank) { + if (NULL != local_iov_array){ + free(local_iov_array); + local_iov_array = NULL; + } - if (NULL != local_iov_array){ - free(local_iov_array); - local_iov_array = NULL; - } + if (my_aggregator == fh->f_rank) { for(l=0;lf_procs_per_group;l++){ if (NULL != blocklen_per_process[l]){ free(blocklen_per_process[l]);