aboutsummaryrefslogtreecommitdiffstats
path: root/mail/message-list.c
diff options
context:
space:
mode:
authorIain Holmes <iain@src.gnome.org>2001-01-26 08:10:00 +0800
committerIain Holmes <iain@src.gnome.org>2001-01-26 08:10:00 +0800
commit47e69c05fc223b2770a224a9acf9698b3bac5c3e (patch)
treedf009ffed31c5fd930b82e9ed97d1676ee335007 /mail/message-list.c
parent9be603bebd3e4ecc52cd0e6b838ca6bd9b65d70c (diff)
downloadgsoc2013-evolution-47e69c05fc223b2770a224a9acf9698b3bac5c3e.tar
gsoc2013-evolution-47e69c05fc223b2770a224a9acf9698b3bac5c3e.tar.gz
gsoc2013-evolution-47e69c05fc223b2770a224a9acf9698b3bac5c3e.tar.bz2
gsoc2013-evolution-47e69c05fc223b2770a224a9acf9698b3bac5c3e.tar.lz
gsoc2013-evolution-47e69c05fc223b2770a224a9acf9698b3bac5c3e.tar.xz
gsoc2013-evolution-47e69c05fc223b2770a224a9acf9698b3bac5c3e.tar.zst
gsoc2013-evolution-47e69c05fc223b2770a224a9acf9698b3bac5c3e.zip
GNOME_Evolution_Mail.oafinfo
svn path=/trunk/; revision=7831
Diffstat (limited to 'mail/message-list.c')
-rw-r--r--mail/message-list.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/mail/message-list.c b/mail/message-list.c
index 46e3b772a5..cf81a89a40 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -2332,6 +2332,7 @@ static void hide_save_state(MessageList *ml)
fclose(out);
}
+ g_free (filename);
MESSAGE_LIST_UNLOCK(ml, hide_lock);
}
@@ -2409,7 +2410,7 @@ static void regen_list_regen(struct _mail_msg *mm)
if (m->ml->hidden) {
for (i=0;i<uids->len;i++) {
if (g_hash_table_lookup(m->ml->hidden, uids->pdata[i]) == 0)
- g_ptr_array_add(uidnew, uids->pdata[i]);
+ g_ptr_array_add(uidnew, g_strdup (uids->pdata[i]));
}
}
@@ -2429,13 +2430,14 @@ static void regen_list_regen(struct _mail_msg *mm)
start = MAX(start, 0);
end = MIN(end, uidnew->len);
for (i=start;i<end;i++) {
- g_ptr_array_add(uid2, uidnew->pdata[i]);
+ g_ptr_array_add(uid2, g_strdup (uidnew->pdata[i]));
}
g_ptr_array_free(uidnew, TRUE);
uidnew = uid2;
}
m->realuids = uids;
+
m->uids = uidnew;
} else {
m->realuids = NULL;
@@ -2470,16 +2472,21 @@ static void regen_list_free(struct _mail_msg *mm)
/* work out if we have aux uid's to free, otherwise free the real ones */
uids = m->realuids;
if (uids) {
- if (m->uids)
- g_ptr_array_free(m->uids, TRUE);
+ if (m->uids) {
+ g_print ("Freeing\n");
+ camel_folder_free_uids(m->ml->folder, m->uids);
+ g_print ("Freed\n");
+/* g_ptr_array_free(m->uids, TRUE); */
+ }
} else
uids = m->uids;
if (uids) {
if (m->search)
camel_folder_search_free(m->ml->folder, uids);
- else
+ else {
camel_folder_free_uids(m->ml->folder, uids);
+ }
}
/* update what we have as our search string */