diff options
Diffstat (limited to 'src/H5Ddeprec.c')
-rw-r--r-- | src/H5Ddeprec.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/H5Ddeprec.c b/src/H5Ddeprec.c index 2810f5a..9fcf367 100644 --- a/src/H5Ddeprec.c +++ b/src/H5Ddeprec.c @@ -280,7 +280,7 @@ done: *------------------------------------------------------------------------- */ herr_t -H5Dextend(hid_t dset_id, const hsize_t *size) +H5Dextend(hid_t dset_id, const hsize_t size[]) { H5D_t *dset; herr_t ret_value = SUCCEED; /* Return value */ @@ -346,10 +346,6 @@ H5D_extend(H5D_t *dataset, const hsize_t *size, hid_t dxpl_id) /* Updated the dataset's info if the dataspace was successfully extended */ if(changed) { - /* Save the new dataspace in the file if necessary */ - if(H5S_write(&(dataset->oloc), space, TRUE, dxpl_id) < 0) - HGOTO_ERROR(H5E_DATASET, H5E_WRITEERROR, FAIL, "unable to update file with new dataspace") - /* Update the index values for the cached chunks for this dataset */ if(H5D_CHUNKED == dataset->shared->layout.type) if(H5D_istore_update_cache(dataset, dxpl_id) < 0) @@ -358,8 +354,11 @@ H5D_extend(H5D_t *dataset, const hsize_t *size, hid_t dxpl_id) /* Allocate space for the new parts of the dataset, if appropriate */ fill = &dataset->shared->dcpl_cache.fill; if(fill->alloc_time == H5D_ALLOC_TIME_EARLY) - if(H5D_alloc_storage(dataset->oloc.file, dxpl_id, dataset, H5D_ALLOC_EXTEND, TRUE, FALSE) < 0) + if(H5D_alloc_storage(dataset->oloc.file, dxpl_id, dataset, H5D_ALLOC_EXTEND, FALSE) < 0) HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to initialize dataset with fill value") + + /* Mark the dataspace as dirty, for later writing to the file */ + dataset->shared->space_dirty = TRUE; } /* end if */ done: |