diff options
author | Rodrigo Moya <rodrigo@gnome-db.org> | 2011-11-02 21:41:55 +0800 |
---|---|---|
committer | Rodrigo Moya <rodrigo@gnome-db.org> | 2011-11-02 21:41:55 +0800 |
commit | 0849af1df6b923a534b3982406d690bb344355ab (patch) | |
tree | a85e9a409d0da412f7e84b218a0c46f6ad5141df /mail | |
parent | 5182ae7cef949001e6aa8b36f1c8fa1694570f98 (diff) | |
parent | bcf8dbb96f31e1b7fcca3a179f64885ca04ff565 (diff) | |
download | gsoc2013-evolution-0849af1df6b923a534b3982406d690bb344355ab.tar gsoc2013-evolution-0849af1df6b923a534b3982406d690bb344355ab.tar.gz gsoc2013-evolution-0849af1df6b923a534b3982406d690bb344355ab.tar.bz2 gsoc2013-evolution-0849af1df6b923a534b3982406d690bb344355ab.tar.lz gsoc2013-evolution-0849af1df6b923a534b3982406d690bb344355ab.tar.xz gsoc2013-evolution-0849af1df6b923a534b3982406d690bb344355ab.tar.zst gsoc2013-evolution-0849af1df6b923a534b3982406d690bb344355ab.zip |
Merge branch 'master' into wip/gsettings
Diffstat (limited to 'mail')
-rw-r--r-- | mail/em-account-editor.c | 31 |
1 files changed, 26 insertions, 5 deletions
diff --git a/mail/em-account-editor.c b/mail/em-account-editor.c index 70a392a327..036570730c 100644 --- a/mail/em-account-editor.c +++ b/mail/em-account-editor.c @@ -2161,12 +2161,10 @@ emae_setup_service (EMAccountEditor *emae, EAccount *account; struct _service_info *info = &emae_service_info[service->type]; CamelURL *url = emae_account_url (emae, info->account_uri_key); - const gchar *uri; account = em_account_editor_get_modified_account (emae); - uri = e_account_get_string (account, info->account_uri_key); - service->provider = uri ? camel_provider_get (uri, NULL) : NULL; + service->provider = url && url->protocol ? camel_provider_get (url->protocol, NULL) : NULL; /* Extract all widgets we need from the builder file. */ @@ -4071,9 +4069,21 @@ emae_commit (EConfig *ec, url = camel_url_new (modified_account->source->url, NULL); if (url != NULL) { - if (emae->priv->source.settings != NULL) + if (emae->priv->source.settings != NULL) { + gchar *host = g_strdup (url->host); + gchar *path = g_strdup (url->path); + gint port = url->port; + camel_settings_save_to_url ( emae->priv->source.settings, url); + + camel_url_set_host (url, host); + camel_url_set_path (url, path); + camel_url_set_port (url, port); + + g_free (host); + g_free (path); + } g_free (modified_account->source->url); modified_account->source->url = camel_url_to_string (url, 0); camel_url_free (url); @@ -4081,9 +4091,20 @@ emae_commit (EConfig *ec, url = camel_url_new (modified_account->transport->url, NULL); if (url != NULL) { - if (emae->priv->transport.settings != NULL) + if (emae->priv->transport.settings != NULL) { + gchar *host = g_strdup (url->host); + gchar *path = g_strdup (url->path); + gint port = url->port; + camel_settings_save_to_url ( emae->priv->transport.settings, url); + camel_url_set_host (url, host); + camel_url_set_path (url, path); + camel_url_set_port (url, port); + + g_free (host); + g_free (path); + } g_free (modified_account->transport->url); modified_account->transport->url = camel_url_to_string (url, 0); camel_url_free (url); |