aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-05-07 01:33:54 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-05-07 01:33:54 +0800
commit19b29348068e367efc105732e9707cdb4132b4ee (patch)
tree69f2aa1d16676f9b05c870f30cb970894b1a9cf0 /mail
parent9b1daa011124f49e149a4f78ef1eef6df38764de (diff)
parentdfb0db749801075ba67e24ac44de8fe9ac2ae2cc (diff)
downloadgsoc2013-evolution-19b29348068e367efc105732e9707cdb4132b4ee.tar.gz
gsoc2013-evolution-19b29348068e367efc105732e9707cdb4132b4ee.tar.zst
gsoc2013-evolution-19b29348068e367efc105732e9707cdb4132b4ee.zip
Merge branch 'master' into kill-bonobo
Conflicts: shell/e-shell-window-commands.c
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog16
-rw-r--r--mail/em-composer-utils.c27
-rw-r--r--mail/mail-ops.c3
3 files changed, 33 insertions, 13 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 359083a65e..90dceba510 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,19 @@
+2009-05-06 Jeff Cai <jeff.cai@sun.com>
+
+ ** Fix for bug #524497
+ * em-composer-utils.c: (guess_account):
+ Change the order getting an account
+
+ The original order is:
+ 1. The account in 'To' of the message.
+ 2. The account of the message source.
+ 3. The account of the folder source.
+
+ The new order is:
+ 1. The account of the folder source.
+ 2. The account of the message source.
+ 3. The account in "To' of the message
+
2009-04-28 Milan Crha <mcrha@redhat.com>
** Fix for bug #572348
diff --git a/mail/em-composer-utils.c b/mail/em-composer-utils.c
index c32b05b402..f503f2d7ed 100644
--- a/mail/em-composer-utils.c
+++ b/mail/em-composer-utils.c
@@ -1870,7 +1870,22 @@ guess_account (CamelMimeMessage *message, CamelFolder *folder)
&& (account = guess_account_folder(folder)))
return account;
- /* then recipient (to/cc) in account table */
+ /* check for source folder */
+ if (folder) {
+ account = guess_account_folder(folder);
+ if (account)
+ return account;
+ }
+
+ /* then message source */
+ if (account == NULL
+ && (tmp = camel_mime_message_get_source(message))) {
+ account = mail_config_get_account_by_source_url(tmp);
+ if (account)
+ return account;
+ }
+
+ /* finally recipient (to/cc) in account table */
account_hash = generate_account_hash ();
for (j=0;account == NULL && j<2;j++) {
const CamelInternetAddress *to;
@@ -1886,16 +1901,6 @@ guess_account (CamelMimeMessage *message, CamelFolder *folder)
}
g_hash_table_destroy(account_hash);
- /* then message source */
- if (account == NULL
- && (tmp = camel_mime_message_get_source(message)))
- account = mail_config_get_account_by_source_url(tmp);
-
- /* and finally, source folder */
- if (account == NULL
- && folder)
- account = guess_account_folder(folder);
-
return account;
}
diff --git a/mail/mail-ops.c b/mail/mail-ops.c
index 6e77055bac..97df0ed9bd 100644
--- a/mail/mail-ops.c
+++ b/mail/mail-ops.c
@@ -36,7 +36,6 @@
#include <glib.h>
#include <glib/gstdio.h>
-#include <libgnome/gnome-exec.h>
#include <glib/gi18n.h>
#include <camel/camel-mime-filter-from.h>
@@ -2527,7 +2526,7 @@ mail_execute_shell_command (CamelFilterDriver *driver, int argc, char **argv, vo
if (argc <= 0)
return;
- gnome_execute_async_fds (NULL, argc, argv, TRUE);
+ g_spawn_async (NULL, argv, NULL, 0, NULL, data, NULL, NULL);
}
/* Async service-checking/authtype-lookup code. */