evolution r36887 - branches/gnome-2-24/mail



Author: sragavan
Date: Mon Dec 15 06:54:12 2008
New Revision: 36887
URL: http://svn.gnome.org/viewvc/evolution?rev=36887&view=rev

Log:
2008-12-15  Srinivasa Ragavan  <sragavan novell com>

	** Fix for #546637

	* message-list.c: (message_list_finalise), (regen_list_exec),
	(regen_list_done): Don't loose uids.




Modified:
   branches/gnome-2-24/mail/ChangeLog
   branches/gnome-2-24/mail/message-list.c

Modified: branches/gnome-2-24/mail/message-list.c
==============================================================================
--- branches/gnome-2-24/mail/message-list.c	(original)
+++ branches/gnome-2-24/mail/message-list.c	Mon Dec 15 06:54:12 2008
@@ -2299,6 +2299,11 @@
 
 	g_hash_table_destroy (message_list->normalised_hash);
 
+	if (message_list->ensure_uid) {
+		g_free (message_list->ensure_uid);
+		message_list->ensure_uid = NULL;
+	}
+
 	if (message_list->thread_tree)
 		camel_folder_thread_messages_unref(message_list->thread_tree);
 
@@ -3971,13 +3976,11 @@
 		uids = camel_folder_get_uids (m->folder);
 	} else {
 		searchuids = uids = camel_folder_search_by_expression (m->folder, expr, &m->base.ex);
-
 		/* If m->changes is not NULL, then it means we are called from folder_changed event,
 		   thus we will keep the selected message to be sure it doesn't disappear because
 		   it no longer belong to our search filter. */
-		if (uids && m->ml->search && ((m->changes && m->ml->cursor_uid) || m->ml->ensure_uid)) {
+		if (uids && ((m->changes && m->ml->cursor_uid) || m->ml->ensure_uid)) {
 			const char *looking_for = m->ml->cursor_uid;
-
 			/* ensure_uid has precedence of cursor_uid */
 			if (m->ml->ensure_uid)
 				looking_for = m->ml->ensure_uid;
@@ -4142,11 +4145,6 @@
 	if (m->ml->priv->destroyed)
 		return;
 
-	if (m->ml->ensure_uid) {
-		g_free (m->ml->ensure_uid);
-		m->ml->ensure_uid = NULL;
-	}
-
 	if (!m->complete)
 		return;
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]