diff options
author | Larry Knox <lrknox@hdfgroup.org> | 2023-08-04 21:47:50 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-04 21:47:50 (GMT) |
commit | f3de9ee39d9c5d24389cb652ce1a583e61d40af2 (patch) | |
tree | 70b5bf96bfc853daf565b20114b22c7f1124c95a /src/H5Oainfo.c | |
parent | 4cab7b08a0892a4fc92808e069084fdcf0931b4f (diff) | |
download | hdf5-f3de9ee39d9c5d24389cb652ce1a583e61d40af2.zip hdf5-f3de9ee39d9c5d24389cb652ce1a583e61d40af2.tar.gz hdf5-f3de9ee39d9c5d24389cb652ce1a583e61d40af2.tar.bz2 |
Merge hdf5_1_14 changes 07-29 to 08-04 (#3355)
* Fix loading plugin fails with missing directory GH issue #3248 (#3323)
* Switch parallel compression to use vector I/O (#3245) (#3327)
Updates parallel compression feature to use vector I/O instead of
creating and passing down MPI derived types to VFD
* Fix incorrect error check in H5Ofill.c for undefined fill values (#3312) (#3328)
* Fix H5Otoken_to_str call in h5dump and other minor cleanup (#3314) (#3329)
* Fix h5repack for variable-length datatyped datasets (#3331) (#3333)
* Merge Made HGOTO_ERROR a do-while loop changes from develop (#3334)
* Merge Fixes the last of the -Wextra-semi-stmt warnings #3326 (#3338)
* Fix assertion failure in H5D__mpio_collective_filtered_vec_io (#3340) (#3350)
* Merges from develop Aug 2-4 (#3354)
* Fix CVE-2018-11202 (#3330)
A malformed file could result in chunk index memory leaks. Under most
conditions (i.e., when the --enable-using-memchecker option is NOT
used), this would result in a small memory leak and and infinite loop
and abort when shutting down the library. The infinite loop would be
due to the "free list" package not being able to clear its resources
so the library couldn't shut down. When the "using a memory checker"
option is used, the free lists are disabled so there is just a memory
leak with no abort on library shutdown.
The chunk index resources are now correctly cleaned up when reading
misparsed files and valgrind confirms no memory leaks.
* Fix CVE-2018-13867 (#3336)
* Windows runtime items go into the bin folder (#3320)
* Commit changes to generated file generated by autogen.sh: configure,
H5Einit.h, and H5Tconv.c.
* Committing clang-format changes
Diffstat (limited to 'src/H5Oainfo.c')
-rw-r--r-- | src/H5Oainfo.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/H5Oainfo.c b/src/H5Oainfo.c index 7d4d6b7..23841a6 100644 --- a/src/H5Oainfo.c +++ b/src/H5Oainfo.c @@ -109,18 +109,18 @@ H5O__ainfo_decode(H5F_t *f, H5O_t H5_ATTR_UNUSED *open_oh, unsigned H5_ATTR_UNUS if (H5_IS_BUFFER_OVERFLOW(p, 1, p_end)) HGOTO_ERROR(H5E_OHDR, H5E_OVERFLOW, NULL, "ran off end of input buffer while decoding"); if (*p++ != H5O_AINFO_VERSION) - HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, NULL, "bad version number for message") + HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, NULL, "bad version number for message"); /* Allocate space for message */ if (NULL == (ainfo = H5FL_MALLOC(H5O_ainfo_t))) - HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed") + HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed"); /* Get the flags for the message */ if (H5_IS_BUFFER_OVERFLOW(p, 1, p_end)) HGOTO_ERROR(H5E_OHDR, H5E_OVERFLOW, NULL, "ran off end of input buffer while decoding"); flags = *p++; if (flags & ~H5O_AINFO_ALL_FLAGS) - HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, NULL, "bad flag value for message") + HGOTO_ERROR(H5E_OHDR, H5E_CANTLOAD, NULL, "bad flag value for message"); ainfo->track_corder = (flags & H5O_AINFO_TRACK_CORDER) ? TRUE : FALSE; ainfo->index_corder = (flags & H5O_AINFO_INDEX_CORDER) ? TRUE : FALSE; @@ -237,7 +237,7 @@ H5O__ainfo_copy(const void *_mesg, void *_dest) /* check args */ assert(ainfo); if (!dest && NULL == (dest = H5FL_MALLOC(H5O_ainfo_t))) - HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed") + HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed"); /* copy */ *dest = *ainfo; @@ -332,7 +332,7 @@ H5O__ainfo_delete(H5F_t *f, H5O_t H5_ATTR_NDEBUG_UNUSED *open_oh, void *_mesg) if (H5_addr_defined(ainfo->fheap_addr)) /* Delete the attribute */ if (H5A__dense_delete(f, ainfo) < 0) - HGOTO_ERROR(H5E_OHDR, H5E_CANTFREE, FAIL, "unable to free dense attribute storage") + HGOTO_ERROR(H5E_OHDR, H5E_CANTFREE, FAIL, "unable to free dense attribute storage"); done: FUNC_LEAVE_NOAPI(ret_value) @@ -398,7 +398,7 @@ H5O__ainfo_copy_file(H5F_t H5_ATTR_NDEBUG_UNUSED *file_src, void *mesg_src, H5F_ /* Allocate space for the destination message */ if (NULL == (ainfo_dst = H5FL_MALLOC(H5O_ainfo_t))) - HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed") + HGOTO_ERROR(H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed"); /* Copy the top level of the information */ *ainfo_dst = *ainfo_src; @@ -454,7 +454,7 @@ H5O__ainfo_post_copy_file(const H5O_loc_t *src_oloc, const void *mesg_src, H5O_l if (H5_addr_defined(ainfo_src->fheap_addr)) if (H5A__dense_post_copy_file_all(src_oloc, ainfo_src, dst_oloc, (H5O_ainfo_t *)mesg_dst, cpy_info) < 0) - HGOTO_ERROR(H5E_ATTR, H5E_CANTCOPY, FAIL, "can't copy attribute") + HGOTO_ERROR(H5E_ATTR, H5E_CANTCOPY, FAIL, "can't copy attribute"); done: FUNC_LEAVE_NOAPI(ret_value) |