Previously in a phonebook pull request ADR was filled with six semicolons when contact address entry was empty in phonebook. This patch fixes this problem. Address is send as an empty string. --- plugins/vcard.c | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/plugins/vcard.c b/plugins/vcard.c index 80f8265..7333a68 100644 --- a/plugins/vcard.c +++ b/plugins/vcard.c @@ -155,6 +155,26 @@ static gboolean contact_fields_present(struct phonebook_contact * contact) return FALSE; } +static gboolean address_fields_present(struct phonebook_contact * contact) +{ + if (contact->pobox && strlen(contact->pobox)) + return TRUE; + if (contact->extended && strlen(contact->extended)) + return TRUE; + if (contact->street && strlen(contact->street)) + return TRUE; + if (contact->locality && strlen(contact->locality)) + return TRUE; + if (contact->region && strlen(contact->region)) + return TRUE; + if (contact->postal && strlen(contact->postal)) + return TRUE; + if (contact->country && strlen(contact->country)) + return TRUE; + + return FALSE; +} + static void vcard_printf_name(GString *vcards, struct phonebook_contact *contact) { @@ -253,6 +273,11 @@ static void vcard_printf_email(GString *vcards, const char *email) static void vcard_printf_adr(GString *vcards, struct phonebook_contact *contact) { + if (address_fields_present(contact) == FALSE) { + vcard_printf(vcards, "ADR:"); + return; + } + vcard_printf(vcards, "ADR:%s;%s;%s;%s;%s;%s;%s", contact->pobox, contact->extended, contact->street, contact->locality, contact->region, -- 1.7.0.4 -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html