diff options
author | Allen Byrne <byrn@hdfgroup.org> | 2019-12-02 14:00:20 (GMT) |
---|---|---|
committer | Allen Byrne <byrn@hdfgroup.org> | 2019-12-02 14:00:20 (GMT) |
commit | 7e92c2e3e503abd983fe5557efa78e61474a7850 (patch) | |
tree | 62969dd4d35575d1fad78a860a76c61d2da8a130 /src/H5Snone.c | |
parent | dcae4544a3cf7b262aeb8e934b55b40fd59ca25a (diff) | |
parent | 0772b975d1d2bfa15aedeb4b6e2c2aac78c61a2f (diff) | |
download | hdf5-7e92c2e3e503abd983fe5557efa78e61474a7850.zip hdf5-7e92c2e3e503abd983fe5557efa78e61474a7850.tar.gz hdf5-7e92c2e3e503abd983fe5557efa78e61474a7850.tar.bz2 |
Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '0772b975d1d2bfa15aedeb4b6e2c2aac78c61a2f':
Fix missing free in H5T__ref_mem_read()
Fix bugs in H5VL file comparison code. Add short circuit success to H5VL_cmp_connector_cls().
Implement file comparison VOL callback. Other changes to allow references to work with non-native connectors. There is a bug somewhere.
Add support for point selections to H5S_select_project_intersection.
Remove H5VL_NATIVE_FILE_GET_FILE_ID and add H5VL_OBJECT_GET_FILE
Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf3)"
Revert "Oops, remove more C99 designated initializers for VS 2010 compatibility."
H5R: fix H5Tconv to check for null references
Trivial parameter renaming in VOL API calls.
Move checking for zero offset in selection adjust calls to the selection callbacks. This makes the procedure for checking it consistent across selection types and between _s and _u, ensures it is always is performed even when called within the H5S package, and removes the redundant check that would occur when callins H5S_select_adjust_s() from outside the H5S package.
Replace H5Sselect_adjust_u() and H5Shyper_adjust_s() with H5Sselect_adjust. Implement "adjust_s" callback for all selection types. Add range checking to H5Sselect_adjust().
Diffstat (limited to 'src/H5Snone.c')
-rw-r--r-- | src/H5Snone.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/H5Snone.c b/src/H5Snone.c index c262d18..0949b2a 100644 --- a/src/H5Snone.c +++ b/src/H5Snone.c @@ -66,6 +66,7 @@ static htri_t H5S__none_shape_same(const H5S_t *space1, const H5S_t *space2); static htri_t H5S__none_intersect_block(const H5S_t *space, const hsize_t *start, const hsize_t *end); static herr_t H5S__none_adjust_u(H5S_t *space, const hsize_t *offset); +static herr_t H5S__none_adjust_s(H5S_t *space, const hssize_t *offset); static herr_t H5S__none_project_scalar(const H5S_t *space, hsize_t *offset); static herr_t H5S__none_project_simple(const H5S_t *space, H5S_t *new_space, hsize_t *offset); @@ -113,6 +114,7 @@ const H5S_select_class_t H5S_sel_none[1] = {{ H5S__none_shape_same, H5S__none_intersect_block, H5S__none_adjust_u, + H5S__none_adjust_s, H5S__none_project_scalar, H5S__none_project_simple, H5S__none_iter_init, @@ -954,6 +956,37 @@ H5S__none_adjust_u(H5S_t H5_ATTR_UNUSED *space, const hsize_t H5_ATTR_UNUSED *of } /* end H5S__none_adjust_u() */ +/*-------------------------------------------------------------------------- + NAME + H5S__none_adjust_s + PURPOSE + Adjust an "none" selection by subtracting an offset + USAGE + herr_t H5S__none_adjust_u(space, offset) + H5S_t *space; IN/OUT: Pointer to dataspace to adjust + const hssize_t *offset; IN: Offset to subtract + RETURNS + Non-negative on success, negative on failure + DESCRIPTION + Moves selection by subtracting an offset from it. + GLOBAL VARIABLES + COMMENTS, BUGS, ASSUMPTIONS + EXAMPLES + REVISION LOG +--------------------------------------------------------------------------*/ +static herr_t +H5S__none_adjust_s(H5S_t H5_ATTR_UNUSED *space, const hssize_t H5_ATTR_UNUSED *offset) +{ + FUNC_ENTER_STATIC_NOERR + + /* Check args */ + HDassert(space); + HDassert(offset); + + FUNC_LEAVE_NOAPI(SUCCEED) +} /* end H5S__none_adjust_s() */ + + /*------------------------------------------------------------------------- * Function: H5S__none_project_scalar * |