diff options
author | HDF Rational <hdfrat@ncsa.uiuc.edu> | 2001-01-22 18:32:01 (GMT) |
---|---|---|
committer | HDF Rational <hdfrat@ncsa.uiuc.edu> | 2001-01-22 18:32:01 (GMT) |
commit | 5eea3214334850214a2c76f1805f00538d4f4e42 (patch) | |
tree | e950609b237de07a5dbf41e0fa02bdc3e86594bb /src | |
parent | 1331ea52b7a94775bdf78d8b7e76b8e569e124b3 (diff) | |
download | hdf5-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.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -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]; |