summaryrefslogtreecommitdiffstats
path: root/src/H5Dint.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5Dint.c')
-rw-r--r--src/H5Dint.c2
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")