From 673ee09a6299f2a4099da8869534b4aab8b2951e Mon Sep 17 00:00:00 2001 From: Quincey Koziol Date: Tue, 19 Jun 2007 10:24:49 -0500 Subject: [svn-r13880] Description: Push initialization of the DCPL cache earlier, so the dataset storage allocation routines can use the values, instead of pulling them from the property list itself. Tested on: Mac OS X/32 10.4.9 (amazon) Linux/32 2.6 (chicago) Linux/64 2.6 (chicago2) --- src/H5D.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/H5D.c b/src/H5D.c index c9043ad..5735c06 100644 --- a/src/H5D.c +++ b/src/H5D.c @@ -1889,6 +1889,10 @@ H5D_update_entry_info(H5F_t *file, hid_t dxpl_id, H5D_t *dset, H5P_genplist_t *p HGOTO_ERROR (H5E_DATASET, H5E_CANTINIT, FAIL, "unable to update filter header message") } /* end if */ + /* Get the dataset's DCPL cache info */ + if(H5D_get_dcpl_cache(dset->shared->dcpl_id, &dset->shared->dcpl_cache) < 0) + HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't fill DCPL cache") + /* * Allocate storage if space allocate time is early; otherwise delay * allocation until later. @@ -2252,10 +2256,6 @@ H5D_create(H5G_entry_t *loc, const char *name, hid_t type_id, const H5S_t *space if (H5D_update_entry_info(file, dxpl_id, new_dset, dc_plist) != SUCCEED) HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, NULL, "can't update the metadata cache") - /* Get the dataset's DCPL cache info */ - if (H5D_get_dcpl_cache(new_dset->shared->dcpl_id,&new_dset->shared->dcpl_cache)<0) - HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, NULL, "can't fill DCPL cache") - /* * Give the dataset a name. That is, create and add a new object to the * group this dataset is being initially created in. @@ -2658,6 +2658,10 @@ H5D_open_oid(H5D_t *dataset, hid_t dxpl_id) } /* end if */ } /* end if */ + /* Get the dataset's DCPL cache info */ + if(H5D_get_dcpl_cache(dataset->shared->dcpl_id, &dataset->shared->dcpl_cache) < 0) + HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't fill DCPL cache") + /* * Make sure all storage is properly initialized. * This is important only for parallel I/O where the space must @@ -2671,10 +2675,6 @@ H5D_open_oid(H5D_t *dataset, hid_t dxpl_id) HGOTO_ERROR(H5E_DATASET, H5E_CANTINIT, FAIL, "unable to initialize file storage") } /* end if */ - /* Get the dataset's DCPL cache info */ - if(H5D_get_dcpl_cache(dataset->shared->dcpl_id,&dataset->shared->dcpl_cache)<0) - HGOTO_ERROR(H5E_DATASET, H5E_CANTGET, FAIL, "can't fill DCPL cache") - done: /* Release fill value information */ if(H5O_reset(H5O_FILL_ID, &fill) < 0) -- cgit v0.12