aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--filter/ChangeLog5
-rw-r--r--filter/filter-rule.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/filter/ChangeLog b/filter/ChangeLog
index cdbd36f7fa..0826237f93 100644
--- a/filter/ChangeLog
+++ b/filter/ChangeLog
@@ -1,3 +1,8 @@
+2004-03-14 Bill Zhu <bill.zhu@sun.com>
+
+ * filter-rule.c (rule_copy): When copying a FilterPart of a rule, we
+ need copy the data of parts together but not only copy the pointer.
+
2004-04-15 Rodney Dawes <dobey@ximian.com>
* filter-datespec.c (validate):
diff --git a/filter/filter-rule.c b/filter/filter-rule.c
index fdf59a5c6f..0aed1c4260 100644
--- a/filter/filter-rule.c
+++ b/filter/filter-rule.c
@@ -437,8 +437,9 @@ rule_copy (FilterRule *dest, FilterRule *src)
node = src->parts;
while (node) {
- FilterPart *part = node->data;
-
+ FilterPart *part;
+
+ part = filter_part_clone (node->data);
g_object_ref (part);
dest->parts = g_list_append (dest->parts, part);
node = node->next;