diff options
Diffstat (limited to 'src/H5Dint.c')
-rw-r--r-- | src/H5Dint.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/H5Dint.c b/src/H5Dint.c index 4750ad6..9f7e004 100644 --- a/src/H5Dint.c +++ b/src/H5Dint.c @@ -1418,6 +1418,7 @@ done: HDONE_ERROR(H5E_DATASET, H5E_CANTRESET, NULL, "unable to reset external file list info") if(new_dset->shared->space && H5S_close(new_dset->shared->space) < 0) HDONE_ERROR(H5E_DATASET, H5E_CLOSEERROR, NULL, "unable to release dataspace") + if(new_dset->shared->type) { if(new_dset->shared->type_id > 0) { if(H5I_dec_ref(new_dset->shared->type_id) < 0) @@ -1428,6 +1429,7 @@ done: HDONE_ERROR(H5E_DATASET, H5E_CLOSEERROR, NULL, "unable to release datatype") } /* end else */ } /* end if */ + if(H5F_addr_defined(new_dset->oloc.addr)) { if(H5O_dec_rc_by_loc(&(new_dset->oloc)) < 0) HDONE_ERROR(H5E_DATASET, H5E_CANTDEC, NULL, "unable to decrement refcount on newly created object") |