Index: trunk/libical/scripts/mkderivedparameters.pl =================================================================== --- trunk/libical/scripts/mkderivedparameters.pl (revision 1034) +++ trunk/libical/scripts/mkderivedparameters.pl (working copy) @@ -264,6 +264,8 @@ icalerror_check_arg_rv( (param!=0), "param"); icalerror_clear_errno(); + if (param->string != NULL) + free (param->string); $set_code } Index: trunk/libical/src/libical/icalcomponent.c =================================================================== --- trunk/libical/src/libical/icalcomponent.c (revision 1034) +++ trunk/libical/src/libical/icalcomponent.c (working copy) @@ -1178,6 +1178,8 @@ if(icalproperty_isa(p) == ICAL_XLICERROR_PROPERTY) { icalcomponent_remove_property(component,p); + icalproperty_free(p); + p = NULL; } } @@ -1245,6 +1247,8 @@ icalproperty_new_requeststatus(rst)); icalcomponent_remove_property(component,p); + icalproperty_free(p); + p = NULL; } } } Index: trunk/libical/src/libical/icalproperty.c =================================================================== --- trunk/libical/src/libical/icalproperty.c (revision 1034) +++ trunk/libical/src/libical/icalproperty.c (working copy) @@ -787,6 +787,7 @@ if (0 == strcmp(kind_string, name)) { pvl_remove (prop->parameters, p); + icalparameter_free(param); break; } }