/soc/2015/jgeboski/facebook: 56c954d1a430: facebook: removed wei...
James Geboski <[email protected]>
| Newsgroups | gmane.comp.gnome.gaim.cvs |
|---|---|
| Message-ID | <[email protected]> |
Changeset: 56c954d1a4306989a6af207d700ee3d8fe444c69 Author: James Geboski <[email protected]> Date: 2015-08-24 19:29 -0400 Branch: facebook URL: https://hg.pidgin.im/soc/2015/jgeboski/facebook/rev/56c954d1a430 Description: facebook: removed weird usage of g_slist_copy_deep() diffstat: libpurple/glibcompat.h | 19 ------------------- libpurple/protocols/facebook/api.c | 13 ++++++++++--- 2 files changed, 10 insertions(+), 22 deletions(-) diffs (67 lines): diff --git a/libpurple/glibcompat.h b/libpurple/glibcompat.h --- a/libpurple/glibcompat.h +++ b/libpurple/glibcompat.h @@ -61,23 +61,6 @@ static inline gboolean g_close(gint fd, return FALSE; } -#if !GLIB_CHECK_VERSION(2, 34, 0) - -static inline GSList * g_slist_copy_deep(GSList *list, GCopyFunc func, - gpointer data) -{ - GSList *ret = NULL; - GSList *l; - - if (G_UNLIKELY(func == NULL)) - return g_slist_copy(list); - - for (l = list; l != NULL; l = l->next) - ret = g_slist_prepend(ret, func(l->data, data)); - - return g_slist_reverse(ret); -} - #if !GLIB_CHECK_VERSION(2, 32, 0) #include <glib-object.h> @@ -209,8 +192,6 @@ static inline GError * g_error_new_valis #endif /* < 2.32.0 */ -#endif /* < 2.34.0 */ - #endif /* < 2.36.0 */ diff --git a/libpurple/protocols/facebook/api.c b/libpurple/protocols/facebook/api.c --- a/libpurple/protocols/facebook/api.c +++ b/libpurple/protocols/facebook/api.c @@ -2943,6 +2943,8 @@ FbApiThread * fb_api_thread_dup(const FbApiThread *thrd, gboolean deep) { FbApiThread *ret; + FbApiUser *user; + GSList *l; if (thrd == NULL) { return g_new0(FbApiThread, 1); @@ -2951,10 +2953,15 @@ fb_api_thread_dup(const FbApiThread *thr ret = g_memdup(thrd, sizeof *thrd); if (deep) { + ret->users = NULL; + + for (l = thrd->users; l != NULL; l = l->next) { + user = fb_api_user_dup(l->data, TRUE); + ret->users = g_slist_prepend(ret->users, user); + } + ret->topic = g_strdup(thrd->topic); - ret->users = g_slist_copy_deep(thrd->users, - (GCopyFunc) fb_api_user_dup, - GINT_TO_POINTER(deep)); + ret->users = g_slist_reverse(ret->users); } return ret; _______________________________________________ Commits mailing list [email protected] https://pidgin.im/cgi-bin/mailman/listinfo/commits