Skip to contentSkip to conversation

Question about phonebook_add_contact

DISCUSSION Radoslaw Jablonski 2 participants 2 messages Aug 12, 2010 Bluetooth drivers

lore
Share & tools
lore
#0 lore raw

Hi!
I've got question about this part of code from beginning phonebook_add_contact func:

if ((contact->numbers == NULL && (contact->fullname == NULL ||

                        contact->fullname[0] == '\0')))
        return;

Is this checking really needed in that place? It is possible to have contacts data in phonebook that have all data except phone set (by example: email addresses, main address etc). In that condition when we want to pull target vcard entry, then empty string will be returned even if user send ATTRIBUTE_MASK to include all fields in the result.

I'm asking because I have problem with "0.vcf" vcard (this is responsible for personal information of device owner). This entry by default does not have any phone's data filled in address book but it is mandatory to put this in vcard-listing. Actually, I am forced to initialize contact->numbers list with empty number even if none of number is available to return correct result for "0.vcf."(in phonebook-tracker)...

Can this 'contact->numbers' checking be removed from there or maybe other phonebooks rely on this behaviour?

BR,
Radek

#1 lore raw

Hi Radek,

Quoted 9 lines · Radoslaw Jablonski

 Hi!
I've got question about this part of code from beginning phonebook_add_contact func:

if ((contact->numbers == NULL && (contact->fullname == NULL || contact->fullname[0] == '\0'))) return;

Quoted 10 lines

Is this checking really needed in that place? It is possible to have contacts data
in phonebook that have all data except phone set (by example: email addresses,
main address etc). In that condition when we want to pull target vcard entry, then
empty string will be returned even if user send ATTRIBUTE_MASK to include all fields
in the result.

That piece of code is a legacy from simpler times, when we supported less types of contact information.

Quoted 10 lines

I'm asking because I have problem with "0.vcf" vcard (this is responsible for personal
information of device owner). This entry by default does not have any phone's data
filled in address book but it is mandatory to put this in vcard-listing. Actually, I am forced to initialize contact->numbers list with empty number even if
none of number is available to return correct result for "0.vcf."(in phonebook-tracker)...

Quoted 5 lines

Can this 'contact->numbers' checking be removed from there or maybe other phonebooks
rely on this behaviour?

From what I know, the Tracker backend is the only thing that relies on

that, so I think that check could be removed with little to no problem. In fact, as you are already dealing with the empty numbers list case, the problem is already solved.

Quoted 11 lines

BR,
Radek

--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Cheers,

Signature · 1 line
Vinicius