Revision 444 src/mh.c

mh.c (revision 444)
216 216
		}
217 217
	} else if (use_cache) {
218 218
		GSList *newlist, *cur, *next;
219
		gboolean strict_cache_check = prefs_common.strict_cache_check;
219 220

  
220
		mlist = procmsg_read_cache
221
			(item, prefs_common.strict_cache_check);
221
		if (item->stype == F_QUEUE || item->stype == F_DRAFT)
222
			strict_cache_check = TRUE;
223

  
224
		mlist = procmsg_read_cache(item, strict_cache_check);
222 225
		msg_table = procmsg_msg_hash_table_create(mlist);
223 226
		newlist = mh_get_uncached_msgs(msg_table, item);
224 227
		if (newlist)
......
226 229
		if (msg_table)
227 230
			g_hash_table_destroy(msg_table);
228 231

  
229
		if (!prefs_common.strict_cache_check) {
232
		if (!strict_cache_check) {
230 233
			/* remove nonexistent messages */
231 234
			for (cur = mlist; cur != NULL; cur = next) {
232 235
				MsgInfo *msginfo = (MsgInfo *)cur->data;

Also available in: Unified diff