diff options
author | Not Zed <NotZed@Ximian.com> | 2001-08-08 17:39:56 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2001-08-08 17:39:56 +0800 |
commit | bbfda4227e6790fa945368cb5d4cb3d24e4da3d7 (patch) | |
tree | 6a451fa92a651f0750f0001e49d8b38a28c90e96 /filter/filter-rule.c | |
parent | e835aa2faf3bf45c930924aaa60a134cdd269c35 (diff) | |
download | gsoc2013-evolution-bbfda4227e6790fa945368cb5d4cb3d24e4da3d7.tar.gz gsoc2013-evolution-bbfda4227e6790fa945368cb5d4cb3d24e4da3d7.tar.zst gsoc2013-evolution-bbfda4227e6790fa945368cb5d4cb3d24e4da3d7.zip |
Properly free the list of parts, and the private data.
2001-08-07 Not Zed <NotZed@Ximian.com>
* filter-rule.c (filter_rule_finalise): Properly free the list of
parts, and the private data.
(FilterRulePrivate): Remove unused 'parts' member.
* filter-option.c (free_option): For freeing options.
(filter_option_finalise): Free options list.
* filter-element.c (filter_element_finalise): free name.
* filter-input.c (filter_input_finalise): Free type and values
list.
* filter-context.c (filter_context_finalise): Free the actions.
* rule-context.c (rule_context_finalise): Remove the totally weird
arsed *_set_list free code.
(free_part_set):
(free_rule_set): Use this to free stuff using g_list_foreach.
(rule_context_finalise): Free the error string.
(rule_context_finalise): Free the rules and parts.
svn path=/trunk/; revision=11774
Diffstat (limited to 'filter/filter-rule.c')
-rw-r--r-- | filter/filter-rule.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/filter/filter-rule.c b/filter/filter-rule.c index 038db489c5..9bcbc1c459 100644 --- a/filter/filter-rule.c +++ b/filter/filter-rule.c @@ -51,7 +51,6 @@ static void filter_rule_finalise (GtkObject * obj); #define _PRIVATE(x) (((FilterRule *)(x))->priv) struct _FilterRulePrivate { - GtkWidget *parts; /* where the parts are stored */ }; static GtkObjectClass *parent_class; @@ -113,22 +112,16 @@ filter_rule_init (FilterRule * o) } static void -unref_list (GList * l) -{ - while (l) { - gtk_object_unref (GTK_OBJECT (l->data)); - l = g_list_next (l); - } -} - -static void filter_rule_finalise (GtkObject * obj) { FilterRule *o = (FilterRule *) obj; g_free (o->name); g_free (o->source); - unref_list (o->parts); + g_list_foreach(o->parts, (GFunc)gtk_object_unref, NULL); + g_list_free(o->parts); + + g_free(o->priv); ((GtkObjectClass *) (parent_class))->finalize(obj); } |