mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-23 16:20:57 +08:00
Merge branch 'develop' of https://bitbucket.hdfgroup.org/scm/hdffv/hdf5 into stackable_vol
This commit is contained in:
commit
23ff0240ae
@ -695,6 +695,9 @@ H5D__chunk_set_info_real(H5O_layout_chunk_t *layout, unsigned ndims,
|
||||
|
||||
/* Compute the # of chunks in dataset dimensions */
|
||||
for(u = 0, layout->nchunks = 1, layout->max_nchunks = 1; u < ndims; u++) {
|
||||
/* Sanity check */
|
||||
HDassert(layout->dim[u] > 0);
|
||||
|
||||
/* Round up to the next integer # of chunks, to accommodate partial chunks */
|
||||
layout->chunks[u] = ((curr_dims[u] + layout->dim[u]) - 1) / layout->dim[u];
|
||||
if(H5S_UNLIMITED == max_dims[u])
|
||||
|
@ -243,9 +243,15 @@ H5O__layout_decode(H5F_t *f, H5O_t H5_ATTR_UNUSED *open_oh,
|
||||
H5F_addr_decode(f, &p, &(mesg->storage.u.chunk.idx_addr));
|
||||
|
||||
/* Chunk dimensions */
|
||||
for(u = 0; u < mesg->u.chunk.ndims; u++)
|
||||
for(u = 0; u < mesg->u.chunk.ndims; u++) {
|
||||
UINT32DECODE(p, mesg->u.chunk.dim[u]);
|
||||
|
||||
/* Just in case that something goes very wrong, such as file corruption. */
|
||||
if(mesg->u.chunk.dim[u] == 0)
|
||||
HGOTO_ERROR(H5E_DATASET, H5E_BADVALUE, NULL, "chunk dimension must be positive: mesg->u.chunk.dim[%u] = %u",
|
||||
u, mesg->u.chunk.dim[u])
|
||||
} /* end for */
|
||||
|
||||
/* Compute chunk size */
|
||||
for(u = 1, mesg->u.chunk.size = mesg->u.chunk.dim[0]; u < mesg->u.chunk.ndims; u++)
|
||||
mesg->u.chunk.size *= mesg->u.chunk.dim[u];
|
||||
|
Loading…
Reference in New Issue
Block a user