summaryrefslogtreecommitdiffstats
path: root/src/H5VLint.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5VLint.c')
-rw-r--r--src/H5VLint.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/H5VLint.c b/src/H5VLint.c
index 82886cd..17dfc1f 100644
--- a/src/H5VLint.c
+++ b/src/H5VLint.c
@@ -625,9 +625,12 @@ H5VL_register_connector(const void *_cls, hbool_t app_ref, hid_t vipl_id)
HGOTO_ERROR(H5E_VOL, H5E_CANTREGISTER, H5I_INVALID_HID, "unable to register VOL connector ID")
done:
- if (ret_value < 0)
- if (saved)
- H5FL_FREE(H5VL_class_t, saved);
+ if (ret_value < 0 && saved) {
+ if (saved->name)
+ H5MM_xfree(saved->name);
+
+ H5FL_FREE(H5VL_class_t, saved);
+ }
FUNC_LEAVE_NOAPI(ret_value)
} /* end H5VL_register_connector() */
@@ -793,7 +796,6 @@ H5VL__object(hid_t id, H5I_type_t obj_type)
case H5I_UNINIT:
case H5I_BADID:
case H5I_DATASPACE:
- case H5I_REFERENCE:
case H5I_VFL:
case H5I_VOL:
case H5I_GENPROP_CLS: