static void add_contact_cb (GObject *source_object, GAsyncResult *result, gpointer user_data) { GError *error = NULL; gchar *uid; if (!e_book_client_add_contact_finish (E_BOOK_CLIENT (source_object), result, &uid, &error)) { report_error ("add contact finish", &error); stop_main_loop (1); return; } printf ("Contact added as '%s'\n", uid); g_free (uid); stop_main_loop (0); }
static void add_contact_ready_cb (GObject *source_object, GAsyncResult *result, gpointer user_data) { EBookClient *book_client = E_BOOK_CLIENT (source_object); EContactMergingLookup *lookup = user_data; gchar *uid = NULL; GError *error = NULL; g_return_if_fail (book_client != NULL); g_return_if_fail (lookup != NULL); e_book_client_add_contact_finish (book_client, result, &uid, &error); final_id_cb (book_client, error, uid, lookup); if (error != NULL) g_error_free (error); }