diff options
author | MuQun Yang <ymuqun@hdfgroup.org> | 2004-12-08 23:30:40 (GMT) |
---|---|---|
committer | MuQun Yang <ymuqun@hdfgroup.org> | 2004-12-08 23:30:40 (GMT) |
commit | 14f88c168f75d18761a40c07aa2515896e009c48 (patch) | |
tree | fc606a0e37f3288570bac27c57ffed6ce4dfb3d4 /src/H5Shyper.c | |
parent | 2ea000bacf589b3fd45e66d90d24e77781d3c46e (diff) | |
download | hdf5-14f88c168f75d18761a40c07aa2515896e009c48.zip hdf5-14f88c168f75d18761a40c07aa2515896e009c48.tar.gz hdf5-14f88c168f75d18761a40c07aa2515896e009c48.tar.bz2 |
[svn-r9648] Purpose:
bug fix
Description:
The irregular hyperslab span_tree implementation inside
H5S_hyper_add_span_element_helper updating the high bound of the span, but forget updating the number of element of the span.
New routine obtain_derived_datatype catches the bug.
Solution:
Updating the number of element of the span as well.
Platforms tested:
Linux 2.4 and AIX 5.1, both with parallel enabled.
Misc. update:
Diffstat (limited to 'src/H5Shyper.c')
-rw-r--r-- | src/H5Shyper.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/H5Shyper.c b/src/H5Shyper.c index 2bc8dcc..5a01f6a 100644 --- a/src/H5Shyper.c +++ b/src/H5Shyper.c @@ -3231,6 +3231,7 @@ H5S_hyper_add_span_element_helper(H5S_hyper_span_info_t *span_tree, unsigned ran /* Increase size of previous span */ tmp2_span->high++; + tmp2_span->nelem++; /* Reset the 'tmp_span' for the rest of this block's algorithm */ tmp_span=tmp2_span; @@ -3274,6 +3275,7 @@ H5S_hyper_add_span_element_helper(H5S_hyper_span_info_t *span_tree, unsigned ran /* Does new node adjoin existing node? */ if(tmp_span->high+1==coords[0]) { tmp_span->high++; + tmp_span->nelem++; /* Check if this span tree should now be merged with a level higher in the tree */ if(prev_span_info!=NULL) { @@ -3296,6 +3298,7 @@ H5S_hyper_add_span_element_helper(H5S_hyper_span_info_t *span_tree, unsigned ran /* Increase size of previous span */ tmp2_span->high++; + tmp2_span->nelem++; /* Update pointers */ tmp2_span->next=NULL; |