diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-05-21 12:47:34 +0200 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-05-26 12:35:22 +0200 |
commit | 53d80ad82f61a70bdc994a344a5fc84448cb0fa3 (patch) | |
tree | bbab39f46db4291fda0808fdcde4eb647a060daf | |
parent | 92df36c0ec84cf07c96ea8694bbf1e2cfdd819ae (diff) |
fix tpl_log_manager_search_new_finish
-rw-r--r-- | telepathy-logger/log-manager.c | 22 | ||||
-rw-r--r-- | telepathy-logger/log-manager.h | 3 |
2 files changed, 19 insertions, 6 deletions
diff --git a/telepathy-logger/log-manager.c b/telepathy-logger/log-manager.c index 9bc7d82a2..a31cdca77 100644 --- a/telepathy-logger/log-manager.c +++ b/telepathy-logger/log-manager.c @@ -1381,17 +1381,29 @@ tpl_log_manager_search_in_identifier_chats_new_async (TplLogManager *manager, /* Start of tpl_log_manager_search_new async implementation */ -GList * +gboolean tpl_log_manager_search_new_finish (TplLogManager *self, GAsyncResult *result, + GList **chats, GError **error) { - g_return_val_if_fail (error == NULL || *error == NULL, NULL); + GSimpleAsyncResult *simple; - GSimpleAsyncResult *simple = G_SIMPLE_ASYNC_RESULT (result); - return g_simple_async_result_get_op_res_gpointer (simple); -} + g_return_val_if_fail (TPL_IS_LOG_MANAGER (self), FALSE); + g_return_val_if_fail (G_IS_SIMPLE_ASYNC_RESULT (result), FALSE); + g_return_val_if_fail (g_simple_async_result_is_valid (result, + G_OBJECT (self), tpl_log_manager_search_new_async), FALSE); + + simple = G_SIMPLE_ASYNC_RESULT (result); + if (g_simple_async_result_propagate_error (simple, error)) + return FALSE; + + if (chats != NULL) + *chats = g_simple_async_result_get_op_res_gpointer (simple); + + return TRUE; +} static void _search_new_async_result_free (gpointer data) diff --git a/telepathy-logger/log-manager.h b/telepathy-logger/log-manager.h index 050b1ee7b..5eef1d609 100644 --- a/telepathy-logger/log-manager.h +++ b/telepathy-logger/log-manager.h @@ -147,8 +147,9 @@ void tpl_log_manager_search_in_identifier_chats_new_async (TplLogManager *manage GList *tpl_log_manager_search_new (TplLogManager *manager, const gchar *text); -GList *tpl_log_manager_search_new_finish (TplLogManager *self, +gboolean tpl_log_manager_search_new_finish (TplLogManager *self, GAsyncResult *result, + GList **chats, GError **error); void tpl_log_manager_search_new_async (TplLogManager *manager, |