diff options
author | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2017-05-12 04:32:07 (GMT) |
---|---|---|
committer | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2017-05-12 04:32:07 (GMT) |
commit | 839bbd544a8cf11184e0d8429778ebf45c522d10 (patch) | |
tree | ff27d094517c6e1c119f038babe853271fc69ffe /src/H5Dcompact.c | |
parent | 13a3f09a931539ff5606a586a9668ffbf749d40b (diff) | |
download | hdf5-839bbd544a8cf11184e0d8429778ebf45c522d10.zip hdf5-839bbd544a8cf11184e0d8429778ebf45c522d10.tar.gz hdf5-839bbd544a8cf11184e0d8429778ebf45c522d10.tar.bz2 |
Fix for HDFFV-10051
Fix for issue #2 reported in HDFFV-10051:
The layout "dirty" flag for a compact dataset is not reset properly after flusing the data at dataset close.
--Reset the "dirty" flag before flushing the message.
Issue #1 reported in HDFFV-10051 is not a problem for 1.8.
Diffstat (limited to 'src/H5Dcompact.c')
-rw-r--r-- | src/H5Dcompact.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/H5Dcompact.c b/src/H5Dcompact.c index 826daad..49c28a6 100644 --- a/src/H5Dcompact.c +++ b/src/H5Dcompact.c @@ -373,9 +373,11 @@ H5D__compact_flush(H5D_t *dset, hid_t dxpl_id) /* Check if the buffered compact information is dirty */ if(dset->shared->layout.storage.u.compact.dirty) { - if(H5O_msg_write(&(dset->oloc), H5O_LAYOUT_ID, 0, H5O_UPDATE_TIME, &(dset->shared->layout), dxpl_id) < 0) - HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, "unable to update layout message") dset->shared->layout.storage.u.compact.dirty = FALSE; + if(H5O_msg_write(&(dset->oloc), H5O_LAYOUT_ID, 0, H5O_UPDATE_TIME, &(dset->shared->layout), dxpl_id) < 0) { + dset->shared->layout.storage.u.compact.dirty = TRUE; + HGOTO_ERROR(H5E_FILE, H5E_CANTINIT, FAIL, "unable to update layout message") + } } /* end if */ done: |