diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2001-03-17 12:35:46 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2001-03-17 12:35:46 (GMT) |
commit | 542362385c661084613614f84f422f80c5923523 (patch) | |
tree | 749de8a031d7235825881e1d9b2f6693501cc5c3 | |
parent | 09a8e85f27c6d999815ff625c3b87b3c69978c57 (diff) | |
download | hdf5-542362385c661084613614f84f422f80c5923523.zip hdf5-542362385c661084613614f84f422f80c5923523.tar.gz hdf5-542362385c661084613614f84f422f80c5923523.tar.bz2 |
[svn-r3653] Purpose:
Bug Fix
Description:
Partial hyperslabs which exactly fit the size of the lowest dimension of
a chunked dataset weren't being output correctly.
Solution:
Forgot to divide the offset (seq_len) by the size of the lower dimension
hyperslabs - fixed now.
Platforms tested:
FreeBSD 4.2 (hawkwind)
-rw-r--r-- | src/H5Dseq.c | 4 | ||||
-rw-r--r-- | src/H5Fseq.c | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/H5Dseq.c b/src/H5Dseq.c index 56026e2..602183e 100644 --- a/src/H5Dseq.c +++ b/src/H5Dseq.c @@ -253,7 +253,7 @@ printf("%s: Need to get hyperslab, seq_len=%ld, coords[%d]=%ld\n",FUNC,(long)seq /* Build the partial hyperslab information */ for(j=0; j<ndims; j++) { if(i==j) - hslab_size[j]=MIN(seq_len,dset_dims[i]-coords[i]); + hslab_size[j]=MIN(seq_len/down_size[i],dset_dims[i]-coords[i]); else if(j>i) hslab_size[j]=dset_dims[j]; @@ -687,7 +687,7 @@ printf("%s: Need to get hyperslab, seq_len=%ld, coords[%d]=%ld\n",FUNC,(long)seq /* Build the partial hyperslab information */ for(j=0; j<ndims; j++) { if(i==j) - hslab_size[j]=MIN(seq_len,dset_dims[i]-coords[i]); + hslab_size[j]=MIN(seq_len/down_size[i],dset_dims[i]-coords[i]); else if(j>i) hslab_size[j]=dset_dims[j]; diff --git a/src/H5Fseq.c b/src/H5Fseq.c index 56026e2..602183e 100644 --- a/src/H5Fseq.c +++ b/src/H5Fseq.c @@ -253,7 +253,7 @@ printf("%s: Need to get hyperslab, seq_len=%ld, coords[%d]=%ld\n",FUNC,(long)seq /* Build the partial hyperslab information */ for(j=0; j<ndims; j++) { if(i==j) - hslab_size[j]=MIN(seq_len,dset_dims[i]-coords[i]); + hslab_size[j]=MIN(seq_len/down_size[i],dset_dims[i]-coords[i]); else if(j>i) hslab_size[j]=dset_dims[j]; @@ -687,7 +687,7 @@ printf("%s: Need to get hyperslab, seq_len=%ld, coords[%d]=%ld\n",FUNC,(long)seq /* Build the partial hyperslab information */ for(j=0; j<ndims; j++) { if(i==j) - hslab_size[j]=MIN(seq_len,dset_dims[i]-coords[i]); + hslab_size[j]=MIN(seq_len/down_size[i],dset_dims[i]-coords[i]); else if(j>i) hslab_size[j]=dset_dims[j]; |