diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2002-04-02 20:44:48 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2002-04-02 20:44:48 (GMT) |
commit | 30eaf92786a6b3d07f00082f03a8215ed1335ff2 (patch) | |
tree | 16d655c1f80935fd7077b72db1fe728f91116f01 /src | |
parent | 7e6c68da9e9a02926530e1c2ac194664cadd51c9 (diff) | |
download | hdf5-30eaf92786a6b3d07f00082f03a8215ed1335ff2.zip hdf5-30eaf92786a6b3d07f00082f03a8215ed1335ff2.tar.gz hdf5-30eaf92786a6b3d07f00082f03a8215ed1335ff2.tar.bz2 |
[svn-r5129] Purpose:
Bug Fix
Description:
The selection offset was being ignored for certain optimized hyperslab
selection I/O operations.
Solution:
Include the selection offset in the calculation of the location of the
hyperslab to operate on.
Platforms tested:
FreeBSD 4.5 (sleipnir)
Diffstat (limited to 'src')
-rw-r--r-- | src/H5Sall.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/H5Sall.c b/src/H5Sall.c index 7388070..4106549 100644 --- a/src/H5Sall.c +++ b/src/H5Sall.c @@ -479,6 +479,7 @@ printf("%s: check 1.0\n",FUNC); mem_size=(mem_node->end[u]-mem_node->start[u])+1; mem_off=mem_node->start[u]; } /* end else */ + mem_off+=mem_space->select.offset[u]; } /* end if */ else { mem_size=mem_space->extent.u.simple.size[u]; @@ -495,6 +496,7 @@ printf("%s: check 1.0\n",FUNC); file_size=(file_node->end[u]-file_node->start[u])+1; file_off=file_node->start[u]; } /* end else */ + file_off+=file_space->select.offset[u]; } /* end if */ else { file_size=file_space->extent.u.simple.size[u]; @@ -708,6 +710,7 @@ H5S_all_write(H5F_t *f, const struct H5O_layout_t *layout, mem_size=(mem_node->end[u]-mem_node->start[u])+1; mem_off=mem_node->start[u]; } /* end else */ + mem_off+=mem_space->select.offset[u]; } /* end if */ else { mem_size=mem_space->extent.u.simple.size[u]; @@ -724,6 +727,7 @@ H5S_all_write(H5F_t *f, const struct H5O_layout_t *layout, file_size=(file_node->end[u]-file_node->start[u])+1; file_off=file_node->start[u]; } /* end else */ + file_off+=file_space->select.offset[u]; } /* end if */ else { file_size=file_space->extent.u.simple.size[u]; |