diff options
author | Neil Fortner <nfortne2@hdfgroup.org> | 2019-11-27 20:52:30 (GMT) |
---|---|---|
committer | Neil Fortner <nfortne2@hdfgroup.org> | 2019-12-06 22:34:58 (GMT) |
commit | 47f6c293a78aaa92c80b327795b1f1a242ea30a5 (patch) | |
tree | 97499b7977263ba3b35698d14ef58c47eba4dfaf /src | |
parent | 9f9336a5bd541752f472bab4c93da8de89f862cd (diff) | |
download | hdf5-47f6c293a78aaa92c80b327795b1f1a242ea30a5.zip hdf5-47f6c293a78aaa92c80b327795b1f1a242ea30a5.tar.gz hdf5-47f6c293a78aaa92c80b327795b1f1a242ea30a5.tar.bz2 |
Fix issues with using H5Pget_fill_value() with file datatypes retrieved
from H5VLget_file_type().
Diffstat (limited to 'src')
-rw-r--r-- | src/H5Pdcpl.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/H5Pdcpl.c b/src/H5Pdcpl.c index ddb070a..739865f 100644 --- a/src/H5Pdcpl.c +++ b/src/H5Pdcpl.c @@ -3324,19 +3324,19 @@ H5P_get_fill_value(H5P_genplist_t *plist, const H5T_t *type, void *value/*out*/) */ if(H5T_get_size(type) >= H5T_get_size(fill.type)) { buf = value; - if(H5T_path_bkg(tpath) && NULL == (bkg = H5MM_malloc(H5T_get_size(type)))) + if(H5T_path_bkg(tpath) && NULL == (bkg = H5MM_calloc(H5T_get_size(type)))) HGOTO_ERROR(H5E_PLIST, H5E_CANTALLOC, FAIL, "memory allocation failed for type conversion") } /* end if */ else { - if(NULL == (buf = H5MM_malloc(H5T_get_size(fill.type)))) + if(NULL == (buf = H5MM_calloc(H5T_get_size(fill.type)))) HGOTO_ERROR(H5E_PLIST, H5E_CANTALLOC, FAIL, "memory allocation failed for type conversion") - if(H5T_path_bkg(tpath) && NULL == (bkg = H5MM_malloc(H5T_get_size(fill.type)))) + if(H5T_path_bkg(tpath) && NULL == (bkg = H5MM_calloc(H5T_get_size(fill.type)))) HGOTO_ERROR(H5E_PLIST, H5E_CANTALLOC, FAIL, "memory allocation failed for type conversion") } /* end else */ H5MM_memcpy(buf, fill.buf, H5T_get_size(fill.type)); /* Do the conversion */ - if((dst_id = H5I_register(H5I_DATATYPE, H5T_copy(type, H5T_COPY_TRANSIENT), FALSE)) < 0) + if((dst_id = H5I_register(H5I_DATATYPE, H5T_copy(type, H5T_COPY_ALL), FALSE)) < 0) HGOTO_ERROR(H5E_PLIST, H5E_CANTINIT, FAIL, "unable to copy/register datatype") if(H5T_convert(tpath, src_id, dst_id, (size_t)1, (size_t)0, (size_t)0, buf, bkg) < 0) HGOTO_ERROR(H5E_PLIST, H5E_CANTINIT, FAIL, "datatype conversion failed") |