H5D_VLEN_RECLAIM reclaims memory buffers created to store VL datatypes.
type_id must be the datatype stored in the buffer. The
space_id describes the selection for the memory buffer to free the VL datatypes within. The
plist_id is the dataset transfer property list which was used for the I/O transfer to create the buffer. And
buf is the pointer to the buffer to be reclaimed.
The VL structures (
hvl_t) in the user's buffer are modified to zero out the VL information after the memory has been reclaimed.
If nested VL datatypes were used to create the buffer, this routine frees them from the bottom up, releasing all the memory without creating memory leaks.