summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjhendersonHDF <jhenderson@hdfgroup.org>2023-10-31 13:05:52 (GMT)
committerGitHub <noreply@github.com>2023-10-31 13:05:52 (GMT)
commit39c0284c38395aac9eb43364b14931fc2826b7f6 (patch)
tree9bf866cffaa6c8804a4153778320603b9aa1cc03
parentebc1651425e6052824bae82b2a8016f9a8af4ff2 (diff)
downloadhdf5-39c0284c38395aac9eb43364b14931fc2826b7f6.zip
hdf5-39c0284c38395aac9eb43364b14931fc2826b7f6.tar.gz
hdf5-39c0284c38395aac9eb43364b14931fc2826b7f6.tar.bz2
Fix a couple usages of MPI_Info_get (#3809)
-rw-r--r--src/H5FDmpio.c4
-rw-r--r--src/H5mpi.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/H5FDmpio.c b/src/H5FDmpio.c
index 7141550..83a5ad4 100644
--- a/src/H5FDmpio.c
+++ b/src/H5FDmpio.c
@@ -906,7 +906,7 @@ H5FD__mpio_open(const char *name, unsigned flags, hid_t fapl_id, haddr_t H5_ATTR
/* copy over each hint */
for (i = 0; i < nkeys; i++) {
- char key[MPI_MAX_INFO_KEY], value[MPI_MAX_INFO_VAL];
+ char key[MPI_MAX_INFO_KEY], value[MPI_MAX_INFO_VAL + 1];
int valuelen, flag;
/* retrieve the nth hint */
@@ -916,7 +916,7 @@ H5FD__mpio_open(const char *name, unsigned flags, hid_t fapl_id, haddr_t H5_ATTR
if (MPI_SUCCESS != (mpi_code = MPI_Info_get_valuelen(info_used, key, &valuelen, &flag)))
HMPI_GOTO_ERROR(NULL, "MPI_Info_get_valuelen failed", mpi_code)
/* retrieve the value of nth hint */
- if (MPI_SUCCESS != (mpi_code = MPI_Info_get(info_used, key, valuelen + 1, value, &flag)))
+ if (MPI_SUCCESS != (mpi_code = MPI_Info_get(info_used, key, valuelen, value, &flag)))
HMPI_GOTO_ERROR(NULL, "MPI_Info_get failed", mpi_code)
/* copy the hint into info */
diff --git a/src/H5mpi.c b/src/H5mpi.c
index 2725ec5..cf7e33d 100644
--- a/src/H5mpi.c
+++ b/src/H5mpi.c
@@ -380,9 +380,9 @@ H5_mpi_info_cmp(MPI_Info info1, MPI_Info info2, int *result)
/* Allocate buffers for iteration */
if (NULL == (key = (char *)H5MM_malloc(MPI_MAX_INFO_KEY * sizeof(char))))
HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, FAIL, "memory allocation failed");
- if (NULL == (value1 = (char *)H5MM_malloc(MPI_MAX_INFO_VAL * sizeof(char))))
+ if (NULL == (value1 = (char *)H5MM_malloc((MPI_MAX_INFO_VAL + 1) * sizeof(char))))
HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, FAIL, "memory allocation failed");
- if (NULL == (value2 = (char *)H5MM_malloc(MPI_MAX_INFO_VAL * sizeof(char))))
+ if (NULL == (value2 = (char *)H5MM_malloc((MPI_MAX_INFO_VAL + 1) * sizeof(char))))
HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, FAIL, "memory allocation failed");
/* Iterate over the keys, comparing them */