From afbe70bca07cb562b9c14eb05d5853ef16e0d221 Mon Sep 17 00:00:00 2001 From: Rodrigo Moya Date: Tue, 18 Nov 2008 17:59:38 +0000 Subject: [PATCH] don't leak icon_name. 2008-11-18 Rodrigo Moya * font-viewer/font-view.c (set_icon): don't leak icon_name. * font-viewer/ftstream-vfs.c (vfs_stream_open): don't leak GFile pointer. svn path=/trunk/; revision=9143 --- ChangeLog | 7 +++++++ font-viewer/font-view.c | 22 +++++++++++----------- font-viewer/ftstream-vfs.c | 7 ++++--- 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index c068afc48..940bc93f4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-11-18 Rodrigo Moya + + * font-viewer/font-view.c (set_icon): don't leak icon_name. + + * font-viewer/ftstream-vfs.c (vfs_stream_open): don't leak + GFile pointer. + 2008-11-18 Rodrigo Moya * font-viewer/font-view.c (set_icon): added missing diff --git a/font-viewer/font-view.c b/font-viewer/font-view.c index c6b0ed248..bfbe47ead 100644 --- a/font-viewer/font-view.c +++ b/font-viewer/font-view.c @@ -385,8 +385,10 @@ set_icon(GtkWindow *window, const gchar *uri) info = g_file_query_info (file, G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE, G_FILE_QUERY_INFO_NONE, NULL, NULL); - if (! info) - goto end; + if (! info) { + g_object_unref (file); + return; + } content_type = g_file_info_get_content_type (info); icon = g_content_type_get_icon (content_type); @@ -398,22 +400,20 @@ set_icon(GtkWindow *window, const gchar *uri) if (names) { gint i; for (i = 0; names[i]; i++) - if (gtk_icon_theme_has_icon (icon_theme, names[i])) - icon_name = g_strdup (names[i]); + if (gtk_icon_theme_has_icon (icon_theme, names[i])) { + icon_name = g_strdup (names[i]); + break; + } } } - if (icon_name) + if (icon_name) { gtk_window_set_icon_name (window, icon_name); + g_free (icon_name); + } g_object_unref (icon); g_free (content_type); - - end: - if (icon_name) - g_free(icon_name); - - g_object_unref (file); } int diff --git a/font-viewer/ftstream-vfs.c b/font-viewer/ftstream-vfs.c index 182e27476..6dd2fef3e 100644 --- a/font-viewer/ftstream-vfs.c +++ b/font-viewer/ftstream-vfs.c @@ -68,10 +68,10 @@ static FT_Error vfs_stream_open(FT_Stream stream, const char *uri) { - GFile *file = NULL; + GFile *file; GError *error = NULL; - GFileInfo *info = NULL; - GFileInputStream *handle = NULL; + GFileInfo *info; + GFileInputStream *handle; if (!stream) return FT_Err_Invalid_Stream_Handle; @@ -81,6 +81,7 @@ vfs_stream_open(FT_Stream stream, handle = g_file_read (file, NULL, &error); if (! handle) { g_message (error->message); + g_object_unref (file); g_error_free (error); return FT_Err_Cannot_Open_Resource;