aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-config.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2002-07-06 03:38:11 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2002-07-06 03:38:11 +0800
commita293a2aa215aea513cf5c88c14f783f224719de8 (patch)
treeff788022c0f08b5958696dba6a8f13f769b1a94e /mail/mail-config.c
parent915bf644648f4de87c4c2472c368719524456936 (diff)
downloadgsoc2013-evolution-a293a2aa215aea513cf5c88c14f783f224719de8.tar.gz
gsoc2013-evolution-a293a2aa215aea513cf5c88c14f783f224719de8.tar.zst
gsoc2013-evolution-a293a2aa215aea513cf5c88c14f783f224719de8.zip
No longer need to pass a postpone_cb function into the composer
2002-07-05 Jeffrey Stedfast <fejj@ximian.com> * main.c (main): No longer need to pass a postpone_cb function into the composer factory_init. * mail-send-recv.c (get_receive_type): If the provider is a transport, return SEND_SEND. * mail-config.c (mail_config_get_default_transport): If the default account doesn't have a transport, find the first account that does. * mail-callbacks.c (append_mail_cleanup): Don't bother freeing the appended_uid here. (composer_send_internal): New helper function that does all the similar work that composer_send_cb and composer_postpone_cb did. (composer_send_cb): Append the message to Outbox and in the async callback, queue a message send operation. (composer_postpone_cb): Removed. (composer_send_queued_cb): The new async callback for composer_send_cb(). If the append is successful, queue a message send operation and destroy the composer otherwise re-show the composer. (save_draft_done): g_strdup the appended uid. (compose_msg): Don't connect to the postpone signal anymore as it no longer exists. (send_to_url): Same. (mail_reply): Here too. (forward_get_composer): And here. (redirect_get_composer): Again here. (do_edit_messages): And finally here. * mail-ops.c (append_mail_free): Free the appended uid. svn path=/trunk/; revision=17379
Diffstat (limited to 'mail/mail-config.c')
-rw-r--r--mail/mail-config.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/mail/mail-config.c b/mail/mail-config.c
index 58bb0f5ce8..0cef4dc0fa 100644
--- a/mail/mail-config.c
+++ b/mail/mail-config.c
@@ -2400,12 +2400,24 @@ const MailConfigService *
mail_config_get_default_transport (void)
{
const MailConfigAccount *account;
+ const GSList *accounts;
account = mail_config_get_default_account ();
- if (account)
+ if (account && account->transport && account->transport->url)
return account->transport;
- else
- return NULL;
+
+ /* return the first account with a transport? */
+ accounts = config->accounts;
+ while (accounts) {
+ account = accounts->data;
+
+ if (account->transport && account->transport->url)
+ return account->transport;
+
+ accounts = accounts->next;
+ }
+
+ return NULL;
}
GSList *