summaryrefslogtreecommitdiffstats
path: root/src/H5Shyper.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>1999-07-17 23:59:54 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>1999-07-17 23:59:54 (GMT)
commit9b50a916c5b0f71cee33cdd040e074bd6f0d3c83 (patch)
tree44eb45f596b5d5391f2503690a576fc121d385f3 /src/H5Shyper.c
parente6fc1366cb7b7b89deedac35d39981318574bbb5 (diff)
downloadhdf5-9b50a916c5b0f71cee33cdd040e074bd6f0d3c83.zip
hdf5-9b50a916c5b0f71cee33cdd040e074bd6f0d3c83.tar.gz
hdf5-9b50a916c5b0f71cee33cdd040e074bd6f0d3c83.tar.bz2
[svn-r1506] Bug fixes to get VL datatype fields in compound datatypes working. Also, some
memory leaks plugged in other routines.
Diffstat (limited to 'src/H5Shyper.c')
-rw-r--r--src/H5Shyper.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/H5Shyper.c b/src/H5Shyper.c
index 50704bd..8227c87 100644
--- a/src/H5Shyper.c
+++ b/src/H5Shyper.c
@@ -2844,6 +2844,10 @@ H5S_hyper_select_deserialize (H5S_t *space, const uint8_t *buf)
} /* end if */
} /* end for */
+ /* Free temporary buffers */
+ H5MM_xfree(start);
+ H5MM_xfree(count);
+
done:
FUNC_LEAVE (ret_value);
} /* H5S_hyper_select_deserialize() */
@@ -3160,9 +3164,11 @@ H5S_hyper_select_iterate(void *buf, hid_t type_id, H5S_t *space, H5D_operator_t
iter_info.src=buf;
iter_info.lo_bounds=lo_bounds;
iter_info.hi_bounds=hi_bounds;
+
/* Set up the size of the memory space */
HDmemcpy(iter_info.mem_size, space->extent.u.simple.size, space->extent.u.simple.rank*sizeof(hsize_t));
iter_info.mem_size[space->extent.u.simple.rank]=iter_info.elem_size;
+
/* Copy the location of the region in the file */
iter_info.op=operator;
iter_info.op_data=operator_data;
@@ -3175,6 +3181,9 @@ H5S_hyper_select_iterate(void *buf, hid_t type_id, H5S_t *space, H5D_operator_t
H5MM_xfree(lo_bounds);
H5MM_xfree(hi_bounds);
+ /* Release selection iterator */
+ H5S_sel_iter_release(space,&iter);
+
done:
FUNC_LEAVE (ret_value);
} /* H5S_hyper_select_iterate() */