The code for gathering contacts could result in the same contact
being retrieved and added to the list multiple times. The container
which stores the contacts to display will now only allow a contact
to be added to it once instead of multiple times.
ASTERISK-28228
Change-Id: I805185cfcec03340f57d2b9e6cc43c49401812df
return NULL;
}
- contacts_container = ao2_container_alloc_list(AO2_ALLOC_OPT_LOCK_NOLOCK, 0,
+ /* Retrieving all the contacts may result in finding the same contact multiple
+ * times. So that they don't get displayed multiple times we only allow a
+ * single one to be placed into the container.
+ */
+ contacts_container = ao2_container_alloc_list(AO2_ALLOC_OPT_LOCK_NOLOCK, AO2_CONTAINER_ALLOC_OPT_DUPS_REJECT,
cli_contact_sort, cli_contact_compare);
if (!contacts_container) {
return NULL;