From 41b9e32599950f4a1dfa4c0958c01519881e2063 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Tue, 11 Nov 2008 15:25:36 +0000 Subject: Consolidate hardcoding avatars to PNG to one function. (Incidentally, return "image/png" rather than "png" for the mime type, as the latter is not a mime type.) svn path=/trunk/; revision=1668 --- libempathy-gtk/empathy-avatar-chooser.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'libempathy-gtk/empathy-avatar-chooser.c') diff --git a/libempathy-gtk/empathy-avatar-chooser.c b/libempathy-gtk/empathy-avatar-chooser.c index b0142d72d..08dbfad18 100644 --- a/libempathy-gtk/empathy-avatar-chooser.c +++ b/libempathy-gtk/empathy-avatar-chooser.c @@ -45,6 +45,7 @@ typedef struct { gchar *image_data; gsize image_data_size; + gchar *mime_type; } EmpathyAvatarChooserPriv; static void avatar_chooser_finalize (GObject *object); @@ -159,6 +160,7 @@ avatar_chooser_finalize (GObject *object) priv = GET_PRIV (object); g_free (priv->image_data); + g_free (priv->mime_type); G_OBJECT_CLASS (empathy_avatar_chooser_parent_class)->finalize (object); } @@ -176,6 +178,8 @@ avatar_chooser_set_pixbuf (EmpathyAvatarChooser *chooser, g_free (priv->image_data); priv->image_data = NULL; priv->image_data_size = 0; + g_free (priv->mime_type); + priv->mime_type = NULL; if (pixbuf) { pixbuf_view = empathy_pixbuf_scale_down_if_necessary (pixbuf, AVATAR_SIZE_VIEW); @@ -189,6 +193,8 @@ avatar_chooser_set_pixbuf (EmpathyAvatarChooser *chooser, DEBUG ("Failed to save pixbuf: %s", error ? error->message : "No error given"); g_clear_error (&error); + } else { + priv->mime_type = "image/png"; } image = gtk_image_new_from_pixbuf (pixbuf_view); @@ -571,7 +577,7 @@ empathy_avatar_chooser_get_image_data (EmpathyAvatarChooser *chooser, *data_size = priv->image_data_size; } if (mime_type) { - *mime_type = "png"; + *mime_type = priv->mime_type; } } -- cgit v1.2.3