Details
Description
Currently, the maemo5 engine sees all details other than phone number and online account details as unique (since it uses "overwrite = true" codepath during save for all details other than phone number and online account).
This can lead to the situation where a user could create a contact with the native API, and add multiple email addresses to it. Then, attempting to perform operations on that contact via the Qt Mobility Contacts API could fail.
Testing shows that clients can still modify or remove the email addresses, and add / modify / remove other details. I did not test adding another email address, but presumably that would fail. If not, the uniqueness constraint is not being observed correctly (ie, it is erroneous to update an existing email address when the clients wants to add a new email address; the operation should instead fail with LimitReachedError).