[folks] Only add non-empty Role or PostalAddress fields in Tracker backend
- From: Travis Reitter <treitter src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [folks] Only add non-empty Role or PostalAddress fields in Tracker backend
- Date: Mon, 30 Jan 2012 19:10:04 +0000 (UTC)
commit 3f78e4a1c5b6cb9084608fa3a28264341d4274c7
Author: Travis Reitter <travis reitter collabora co uk>
Date: Thu Jan 26 16:27:03 2012 -0800
Only add non-empty Role or PostalAddress fields in Tracker backend
This prevents some newly-exposed test failures.
backends/tracker/lib/trf-persona-store.vala | 7 ++++-
backends/tracker/lib/trf-persona.vala | 31 +++++++++++++++++---------
2 files changed, 25 insertions(+), 13 deletions(-)
---
diff --git a/backends/tracker/lib/trf-persona-store.vala b/backends/tracker/lib/trf-persona-store.vala
index a326ef8..f685806 100644
--- a/backends/tracker/lib/trf-persona-store.vala
+++ b/backends/tracker/lib/trf-persona-store.vala
@@ -1795,8 +1795,11 @@ public class Trf.PersonaStore : Folks.PersonaStore
var postal_address = new Folks.PostalAddress (
po_box, extension, street, locality, region, postal_code,
country, null, affl_info.affl_tracker_id);
- affl_info.postal_address_fd =
- new Folks.PostalAddressFieldDetails (postal_address);
+ if (!postal_address.is_empty ())
+ {
+ affl_info.postal_address_fd =
+ new Folks.PostalAddressFieldDetails (postal_address);
+ }
affl_info.email = cursor.get_string
(Trf.AfflInfoFields.AFFL_EMAIL).dup ();
diff --git a/backends/tracker/lib/trf-persona.vala b/backends/tracker/lib/trf-persona.vala
index 0eff1f5..e9cbfc4 100644
--- a/backends/tracker/lib/trf-persona.vala
+++ b/backends/tracker/lib/trf-persona.vala
@@ -834,10 +834,13 @@ public class Trf.Persona : Folks.Persona,
a_info[Trf.PostalAddressFields.COUNTRY],
null,
null);
- var pafd = new PostalAddressFieldDetails (pa);
- pafd.id = a_info[Trf.PostalAddressFields.TRACKER_ID];
+ if (!pa.is_empty ())
+ {
+ var pafd = new PostalAddressFieldDetails (pa);
+ pafd.id = a_info[Trf.PostalAddressFields.TRACKER_ID];
- postal_addresses.add (pafd);
+ postal_addresses.add (pafd);
+ }
}
this._postal_addresses = postal_addresses;
@@ -996,9 +999,12 @@ public class Trf.Persona : Folks.Persona,
var new_role = new Role (title, organisation, null);
new_role.role = role;
- var role_fd = new RoleFieldDetails (new_role);
- role_fd.id = tracker_id;
- role_fds.add (role_fd);
+ if (!new_role.is_empty ())
+ {
+ var role_fd = new RoleFieldDetails (new_role);
+ role_fd.id = tracker_id;
+ role_fds.add (role_fd);
+ }
}
this._roles = role_fds;
@@ -1011,12 +1017,15 @@ public class Trf.Persona : Folks.Persona,
{
var new_role = new Role (title, org, null);
new_role.role = role;
- var role_fd = new RoleFieldDetails (new_role);
- role_fd.id = tracker_id;
- if (this._roles.add (role_fd))
+ if (!new_role.is_empty ())
{
- this.notify_property ("roles");
- return true;
+ var role_fd = new RoleFieldDetails (new_role);
+ role_fd.id = tracker_id;
+ if (this._roles.add (role_fd))
+ {
+ this.notify_property ("roles");
+ return true;
+ }
}
return false;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]