diff options
author | jhendersonHDF <jhenderson@hdfgroup.org> | 2022-05-01 20:54:41 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-01 20:54:41 (GMT) |
commit | 2ba7a01bfff451b043e2ec00811c0aad78921545 (patch) | |
tree | 31dc785e35a95578ea9fbb491fbc931e62234302 /testpar/t_2Gio.c | |
parent | 5eba258d90aa89c3d1d58f1b5ef93c1cf9821c29 (diff) | |
download | hdf5-2ba7a01bfff451b043e2ec00811c0aad78921545.zip hdf5-2ba7a01bfff451b043e2ec00811c0aad78921545.tar.gz hdf5-2ba7a01bfff451b043e2ec00811c0aad78921545.tar.bz2 |
Fix some const cast and stack/static object size warnings (#1700)
* Fix various warnings
* Move HDfree_const to H5private.h for wider use
* Print output from all ranks in parallel tests on allocation failure
* Move const pointer freeing macro to h5test.h for now
Diffstat (limited to 'testpar/t_2Gio.c')
-rw-r--r-- | testpar/t_2Gio.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/testpar/t_2Gio.c b/testpar/t_2Gio.c index 79241c6..554d4ec 100644 --- a/testpar/t_2Gio.c +++ b/testpar/t_2Gio.c @@ -78,7 +78,7 @@ void * old_client_data; /* previous error handler arg.*/ #define NFILENAME 3 #define PARATESTFILE filenames[0] const char *FILENAME[NFILENAME] = {"ParaTest", "Hugefile", NULL}; -char filenames[NFILENAME][PATH_MAX]; +char * filenames[NFILENAME]; hid_t fapl; /* file access property list */ MPI_Comm test_comm = MPI_COMM_WORLD; @@ -224,7 +224,7 @@ parse_options(int argc, char **argv) n = sizeof(FILENAME) / sizeof(FILENAME[0]) - 1; /* exclude the NULL */ for (i = 0; i < n; i++) - if (h5_fixname(FILENAME[i], fapl, filenames[i], sizeof(filenames[i])) == NULL) { + if (h5_fixname(FILENAME[i], fapl, filenames[i], PATH_MAX) == NULL) { HDprintf("h5_fixname failed\n"); nerrors++; return (1); @@ -4585,6 +4585,8 @@ main(int argc, char **argv) MPI_Comm_size(test_comm, &mpi_size); MPI_Comm_rank(test_comm, &mpi_rank); + HDmemset(filenames, 0, sizeof(filenames)); + dim0 = BIG_X_FACTOR; dim1 = BIG_Y_FACTOR; dim2 = BIG_Z_FACTOR; @@ -4601,6 +4603,15 @@ main(int argc, char **argv) HDprintf("Failed to turn off atexit processing. Continue.\n"); }; H5open(); + + HDmemset(filenames, 0, sizeof(filenames)); + for (int i = 0; i < NFILENAME; i++) { + if (NULL == (filenames[i] = HDmalloc(PATH_MAX))) { + HDprintf("couldn't allocate filename array\n"); + MPI_Abort(MPI_COMM_WORLD, -1); + } + } + /* Set the internal transition size to allow use of derived datatypes * without having to actually read or write large datasets (>2GB). */ @@ -4665,6 +4676,11 @@ main(int argc, char **argv) if (mpi_rank == 0) HDremove(FILENAME[0]); + for (int i = 0; i < NFILENAME; i++) { + HDfree(filenames[i]); + filenames[i] = NULL; + } + H5close(); if (test_comm != MPI_COMM_WORLD) { MPI_Comm_free(&test_comm); |