summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorHDF Rational <hdfrat@ncsa.uiuc.edu>2001-01-22 18:32:01 (GMT)
committerHDF Rational <hdfrat@ncsa.uiuc.edu>2001-01-22 18:32:01 (GMT)
commit5eea3214334850214a2c76f1805f00538d4f4e42 (patch)
treee950609b237de07a5dbf41e0fa02bdc3e86594bb /src
parent1331ea52b7a94775bdf78d8b7e76b8e569e124b3 (diff)
downloadhdf5-5eea3214334850214a2c76f1805f00538d4f4e42.zip
hdf5-5eea3214334850214a2c76f1805f00538d4f4e42.tar.gz
hdf5-5eea3214334850214a2c76f1805f00538d4f4e42.tar.bz2
[svn-r3319] Purpose:
Bug Fix Description: Generic property code was leaking memory when removing a property from a property list class in certain situations. Solution: Remove property correctly from class in all situations. Platforms tested: Solaris 2.7 (arabica)
Diffstat (limited to 'src')
-rw-r--r--src/H5P.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/H5P.c b/src/H5P.c
index 6496363..ba3162e 100644
--- a/src/H5P.c
+++ b/src/H5P.c
@@ -6914,8 +6914,12 @@ static herr_t H5P_unregister(H5P_genclass_t *pclass, const char *name)
/* Remove property from property list */
/* Check if the property being removed is at the head of the list for a hash location */
- if(prop==pclass->props[loc])
+ if(prop==pclass->props[loc]) {
pclass->props[loc]=prop->next;
+
+ /* Free the property, ignoring return value, nothing we can do */
+ H5P_free_prop(prop);
+ } /* end if */
else {
/* Set up initial pointers */
prev=tprop=pclass->props[loc];