void eab_contact_locate_match (ESourceRegistry *registry, EContact *contact, EABContactMatchQueryCallback cb, gpointer closure) { eab_contact_locate_match_full ( registry, NULL, contact, NULL, cb, closure); }
static void add_lookup (EContactMergingLookup *lookup) { if (running_merge_requests < SIMULTANEOUS_MERGING_REQUESTS) { running_merge_requests++; eab_contact_locate_match_full ( lookup->registry, lookup->book_client, lookup->contact, lookup->avoid, match_query_callback, lookup); } else { merging_queue = g_list_append (merging_queue, lookup); } }
static void finished_lookup (void) { running_merge_requests--; while (running_merge_requests < SIMULTANEOUS_MERGING_REQUESTS) { EContactMergingLookup *lookup; if (!merging_queue) break; lookup = merging_queue->data; merging_queue = g_list_remove_link (merging_queue, merging_queue); running_merge_requests++; eab_contact_locate_match_full ( lookup->registry, lookup->book_client, lookup->contact, lookup->avoid, match_query_callback, lookup); } }