projects
/
claws.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
reverse msgcache_get_msg_list order
[claws.git]
/
src
/
msgcache.c
diff --git
a/src/msgcache.c
b/src/msgcache.c
index e8d5b1f7f4426ee7cac2079bac27e3fed2473894..00a4c72d5b549a25a2e4bf20bf4246ece6198da9 100644
(file)
--- a/
src/msgcache.c
+++ b/
src/msgcache.c
@@
-195,7
+195,7
@@
MsgCache *msgcache_read_cache(FolderItem *item, const gchar *cache_file)
MsgCache *cache;
FILE *fp;
MsgInfo *msginfo;
MsgCache *cache;
FILE *fp;
MsgInfo *msginfo;
-/* MsgFlags default_flags; */
+ MsgTmpFlags tmp_flags = 0;
gchar file_buf[BUFFSIZE];
gint ver;
guint num;
gchar file_buf[BUFFSIZE];
gint ver;
guint num;
@@
-220,6
+220,12
@@
MsgCache *msgcache_read_cache(FolderItem *item, const gchar *cache_file)
return NULL;
}
return NULL;
}
+ if (item->stype == F_QUEUE) {
+ tmp_flags |= MSG_QUEUED;
+ } else if (item->stype == F_DRAFT) {
+ tmp_flags |= MSG_DRAFT;
+ }
+
cache = msgcache_new();
g_hash_table_freeze(cache->msgnum_table);
cache = msgcache_new();
g_hash_table_freeze(cache->msgnum_table);
@@
-245,11
+251,8
@@
MsgCache *msgcache_read_cache(FolderItem *item, const gchar *cache_file)
READ_CACHE_DATA(msginfo->references, fp);
READ_CACHE_DATA(msginfo->xref, fp);
READ_CACHE_DATA(msginfo->references, fp);
READ_CACHE_DATA(msginfo->xref, fp);
-/*
- MSG_SET_PERM_FLAGS(msginfo->flags, default_flags.perm_flags);
- MSG_SET_TMP_FLAGS(msginfo->flags, default_flags.tmp_flags);
-*/
msginfo->folder = item;
msginfo->folder = item;
+ msginfo->flags.tmp_flags |= tmp_flags;
g_hash_table_insert(cache->msgnum_table, &msginfo->msgnum, msginfo);
if(msginfo->msgid)
g_hash_table_insert(cache->msgnum_table, &msginfo->msgnum, msginfo);
if(msginfo->msgid)
@@
-446,7
+449,7
@@
static void msgcache_get_msg_list_func(gpointer key, gpointer value, gpointer us
GSList **listptr = user_data;
MsgInfo *msginfo = value;
GSList **listptr = user_data;
MsgInfo *msginfo = value;
- *listptr = g_slist_
pre
pend(*listptr, procmsg_msginfo_new_ref(msginfo));
+ *listptr = g_slist_
ap
pend(*listptr, procmsg_msginfo_new_ref(msginfo));
}
GSList *msgcache_get_msg_list(MsgCache *cache)
}
GSList *msgcache_get_msg_list(MsgCache *cache)