From 2b5b5ee5c4144287a345cb04fec1caba3453f2a2 Mon Sep 17 00:00:00 2001 From: "seungha.son" Date: Mon, 10 Oct 2016 19:49:02 +0900 Subject: [PATCH] Modify parameters in g_list_find_custom - Adds type casting of compare function - Modified list parameter because this parameter must point to the top of the list Signed-off-by: seungha.son Change-Id: I001f52cb090f1043c2a16a696afce78858c8dd46 --- src/badge_internal.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/badge_internal.c b/src/badge_internal.c index e85fe0f..2d55856 100755 --- a/src/badge_internal.c +++ b/src/badge_internal.c @@ -1078,7 +1078,7 @@ static gint _badge_data_compare(gconstpointer a, gconstpointer b) if (!a) return -1; - bd = a; + bd = (struct _badge_cb_data *)a; if (bd->callback == b) return 0; @@ -1112,8 +1112,8 @@ int _badge_register_changed_cb(badge_change_cb callback, void *data, uid_t uid) badge_cb_list = g_list_append(badge_cb_list, bd); g_hash_table_insert(_badge_cb_hash, GUINT_TO_POINTER(uid), badge_cb_list); } else { - badge_found_list = g_list_find_custom(badge_cb_list, (gconstpointer)callback, - _badge_data_compare); + badge_found_list = g_list_find_custom(g_list_first(badge_cb_list), (gconstpointer)callback, + (GCompareFunc)_badge_data_compare); if (badge_found_list) { bd = g_list_nth_data(badge_found_list, 0); bd->data = data; @@ -1150,8 +1150,8 @@ int _badge_unregister_changed_cb(badge_change_cb callback, uid_t uid) if (badge_cb_list == NULL) return BADGE_ERROR_INVALID_PARAMETER; - badge_delete_list = g_list_find_custom(badge_cb_list, (gconstpointer)callback, - _badge_data_compare); + badge_delete_list = g_list_find_custom(g_list_first(badge_cb_list), (gconstpointer)callback, + (GCompareFunc)_badge_data_compare); if (badge_delete_list) { bd = g_list_nth_data(badge_delete_list, 0); -- 2.7.4