evolution r36240 - trunk/mail



Author: msuman
Date: Mon Sep  1 04:27:02 2008
New Revision: 36240
URL: http://svn.gnome.org/viewvc/evolution?rev=36240&view=rev

Log:
Milan Crha  <mcrha redhat com> ** Fix for bug #543135 (Write error message to the right stream, do not try to set information message to the message list when it's not visible).

Modified:
   trunk/mail/ChangeLog
   trunk/mail/em-format-html-display.c
   trunk/mail/message-list.c

Modified: trunk/mail/em-format-html-display.c
==============================================================================
--- trunk/mail/em-format-html-display.c	(original)
+++ trunk/mail/em-format-html-display.c	Mon Sep  1 04:27:02 2008
@@ -2446,7 +2446,12 @@
 {
 	char *classid, *html;
 	struct _attach_puri *info;
-	CamelStream *stream = ((CamelStreamFilter *) fstream)->source;
+	CamelStream *stream;
+
+	if (CAMEL_IS_STREAM_FILTER (fstream) && ((CamelStreamFilter *) fstream)->source)
+		stream = ((CamelStreamFilter *) fstream)->source;
+	else
+		stream = fstream;
 
 	classid = g_strdup_printf("optional%s", emf->part_id->str);
 	info = (struct _attach_puri *)em_format_add_puri(emf, sizeof(*info), classid, part, efhd_attachment_frame);

Modified: trunk/mail/message-list.c
==============================================================================
--- trunk/mail/message-list.c	(original)
+++ trunk/mail/message-list.c	Mon Sep  1 04:27:02 2008
@@ -4217,14 +4217,16 @@
 		}
 	}
 
-	if (message_list_length (m->ml) <= 0) {
-		/* space is used to indicate no search too */
-		if (m->ml->search && strcmp (m->ml->search, " ") != 0)
-			e_tree_set_info_message (m->ml->tree, _("No message satisfies your search criteria. Either clear search with Search->Clear menu item or change it."));
-		else
-			e_tree_set_info_message (m->ml->tree, _("There are no messages in this folder."));
-	} else
-		e_tree_set_info_message (m->ml->tree, NULL);
+	if (GTK_WIDGET_VISIBLE (GTK_WIDGET (m->ml))) {
+		if (message_list_length (m->ml) <= 0) {
+			/* space is used to indicate no search too */
+			if (m->ml->search && strcmp (m->ml->search, " ") != 0)
+				e_tree_set_info_message (m->ml->tree, _("No message satisfies your search criteria. Either clear search with Search->Clear menu item or change it."));
+			else
+				e_tree_set_info_message (m->ml->tree, _("There are no messages in this folder."));
+		} else
+			e_tree_set_info_message (m->ml->tree, NULL);
+	}
 
 	g_signal_emit (m->ml, message_list_signals[MESSAGE_LIST_BUILT], 0);
 	m->ml->priv->any_row_changed = FALSE;
@@ -4369,12 +4371,14 @@
 	}
 
 	if (message_list_length (ml) <= 0) {
-		/* there is some info why the message list is empty, let it be something useful */
-		char *txt = g_strconcat (_("Generating message list"), "..." , NULL);
+		if (GTK_WIDGET_VISIBLE (GTK_WIDGET (ml))) {
+			/* there is some info why the message list is empty, let it be something useful */
+			char *txt = g_strconcat (_("Generating message list"), "..." , NULL);
 
-		e_tree_set_info_message (m->ml->tree, txt);
+			e_tree_set_info_message (m->ml->tree, txt);
 
-		g_free (txt);
+			g_free (txt);
+		}
 	} else if (ml->priv->any_row_changed && m->dotree && !ml->just_set_folder && (!ml->search || g_str_equal (ml->search, " "))) {
 		/* there has been some change on any row, if it was an expand state change,
 		   then let it save; if not, then nothing happen. */



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