summaryrefslogtreecommitdiffstats
path: root/src/H5S.c
diff options
context:
space:
mode:
authorRaymond Lu <songyulu@hdfgroup.org>2011-04-14 17:24:03 (GMT)
committerRaymond Lu <songyulu@hdfgroup.org>2011-04-14 17:24:03 (GMT)
commit824dc864bf953e2866a83c03d3bb209b0195fa0b (patch)
tree37e6ca79bd1e3815849cab8fe75eaae07769b6c4 /src/H5S.c
parentce35ebecfb51fd09b0248fb0388917aec43e261e (diff)
downloadhdf5-824dc864bf953e2866a83c03d3bb209b0195fa0b.zip
hdf5-824dc864bf953e2866a83c03d3bb209b0195fa0b.tar.gz
hdf5-824dc864bf953e2866a83c03d3bb209b0195fa0b.tar.bz2
[svn-r20496] Bug 1386 - allow dimension size to be zero even though it isn't unlimited. I made a change in H5Sset_extent_simple to
forbid setting the dimension size bigger than existing maximal size. In this checkin, I restored it to the previous behavior that any change will wipe out previous record of dimensionality. Tested on jam - a simple change.
Diffstat (limited to 'src/H5S.c')
-rw-r--r--src/H5S.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/src/H5S.c b/src/H5S.c
index f002500..13e74de 100644
--- a/src/H5S.c
+++ b/src/H5S.c
@@ -1202,14 +1202,6 @@ H5Sset_extent_simple(hid_t space_id, int rank, const hsize_t dims[/*rank*/],
}
}
- /* Check through all the dimensions to see if the new dimension size exceeds the current
- * size or if the new maximal size exceeds the current maximal size */
- for(u = 0; u < space->extent.rank; u++) {
- if(space->extent.max && H5S_UNLIMITED!=space->extent.max[u] &&
- (space->extent.max[u]<dims[u] || (max && space->extent.max[u]<max[u])))
- HGOTO_ERROR(H5E_ARGS, H5E_BADVALUE, FAIL, "new size exceeds current maximal size")
- } /* end for */
-
/* Do it */
if (H5S_set_extent_simple(space, (unsigned)rank, dims, max)<0)
HGOTO_ERROR(H5E_DATASPACE, H5E_CANTINIT, FAIL, "unable to set simple extent")
@@ -1840,7 +1832,7 @@ H5S_set_extent(H5S_t *space, const hsize_t *size)
/* Check for invalid dimension size modification */
if(space->extent.max && H5S_UNLIMITED != space->extent.max[u] &&
space->extent.max[u] < size[u])
- HGOTO_ERROR(H5E_DATASPACE, H5E_BADVALUE, FAIL, "dimension cannot be modified")
+ HGOTO_ERROR(H5E_DATASPACE, H5E_BADVALUE, FAIL, "dimension cannot exceed the existing maximal size")
/* Indicate that dimension size can be modified */
ret_value = TRUE;