From d3d5a783e375764e9b8508ca4b90baee3f265d2f Mon Sep 17 00:00:00 2001 From: Guillaume Desmottes Date: Tue, 17 Sep 2013 17:22:35 +0200 Subject: avatars: factor out dup_mime_types() --- src/connection-avatars.c | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/src/connection-avatars.c b/src/connection-avatars.c index a955049..198bf7d 100644 --- a/src/connection-avatars.c +++ b/src/connection-avatars.c @@ -31,6 +31,25 @@ #include "connection.h" #include "debug.h" +static gchar ** +dup_mime_types (PurpleBuddyIconSpec *icon_spec) +{ + gchar **mime_types, **i; + gchar *format; + + mime_types = g_strsplit (icon_spec->format, ",", 0); + + for (i = mime_types; *i != NULL; i++) + { + format = *i; + /* FIXME: image/ico is not the correct mime type. */ + *i = g_strconcat ("image/", format, NULL); + g_free (format); + } + + return mime_types; +} + static gchar ** _get_acceptable_mime_types (HazeConnection *self) { @@ -40,20 +59,8 @@ _get_acceptable_mime_types (HazeConnection *self) if (self->acceptable_avatar_mime_types == NULL) { - gchar **mime_types, **i; - gchar *format; - - mime_types = g_strsplit (prpl_info->icon_spec.format, ",", 0); - - for (i = mime_types; *i != NULL; i++) - { - format = *i; - /* FIXME: image/ico is not the correct mime type. */ - *i = g_strconcat ("image/", format, NULL); - g_free (format); - } - - self->acceptable_avatar_mime_types = mime_types; + self->acceptable_avatar_mime_types = dup_mime_types ( + &prpl_info->icon_spec); } return self->acceptable_avatar_mime_types; -- cgit v1.2.1