[evolution-ews] Overlooked that contacts could have lost email address (bug #765398)
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-ews] Overlooked that contacts could have lost email address (bug #765398)
- Date: Wed, 27 Apr 2016 17:13:06 +0000 (UTC)
commit 924c45d5cab2f0ba4bf638ca8cfbd6250bad58fb
Author: Milan Crha <mcrha redhat com>
Date: Wed Apr 27 19:12:14 2016 +0200
Overlooked that contacts could have lost email address (bug #765398)
src/addressbook/e-book-backend-ews.c | 22 ++++++++++++++++------
1 files changed, 16 insertions(+), 6 deletions(-)
---
diff --git a/src/addressbook/e-book-backend-ews.c b/src/addressbook/e-book-backend-ews.c
index b4154ee..1b9407e 100644
--- a/src/addressbook/e-book-backend-ews.c
+++ b/src/addressbook/e-book-backend-ews.c
@@ -586,14 +586,15 @@ static void
set_email_address (EContact *contact,
EContactField field,
EEwsItem *item,
- const gchar *item_field)
+ const gchar *item_field,
+ gboolean require_smtp_prefix)
{
const gchar *ea;
ea = e_ews_item_get_email_address (item, item_field);
if (ea && g_ascii_strncasecmp (ea, "SMTP:", 5) == 0)
ea = ea + 5;
- else
+ else if (require_smtp_prefix)
ea = NULL;
if (ea && *ea)
@@ -601,15 +602,24 @@ set_email_address (EContact *contact,
}
static void
+ebews_populate_emails_ex (EBookBackendEws *ebews,
+ EContact *contact,
+ EEwsItem *item,
+ gboolean require_smtp_prefix)
+{
+ set_email_address (contact, E_CONTACT_EMAIL_1, item, "EmailAddress1", require_smtp_prefix);
+ set_email_address (contact, E_CONTACT_EMAIL_2, item, "EmailAddress2", require_smtp_prefix);
+ set_email_address (contact, E_CONTACT_EMAIL_3, item, "EmailAddress3", require_smtp_prefix);
+}
+
+static void
ebews_populate_emails (EBookBackendEws *ebews,
EContact *contact,
EEwsItem *item,
GCancellable *cancellable,
GError **errror)
{
- set_email_address (contact, E_CONTACT_EMAIL_1, item, "EmailAddress1");
- set_email_address (contact, E_CONTACT_EMAIL_2, item, "EmailAddress2");
- set_email_address (contact, E_CONTACT_EMAIL_3, item, "EmailAddress3");
+ ebews_populate_emails_ex (ebews, contact, item, FALSE);
}
static void
@@ -3438,7 +3448,7 @@ e_book_backend_ews_start_view (EBookBackend *backend,
str = e_contact_get_const (contact, E_CONTACT_EMAIL_1);
if ((!str || !*str) && contact_item && e_ews_item_get_item_type (contact_item) ==
E_EWS_ITEM_TYPE_CONTACT)
- ebews_populate_emails (ebews, contact, contact_item, NULL, NULL);
+ ebews_populate_emails_ex (ebews, contact, contact_item, TRUE);
str = e_contact_get_const (contact, E_CONTACT_EMAIL_1);
if (!str || !*str)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]