From 92e7db9e20993ee12ee5c1a51d8e9641a15e5b52 Mon Sep 17 00:00:00 2001 From: Christian Persch Date: Mon, 16 Feb 2009 14:17:26 +0000 Subject: Fix a freed memory read. * libdocument/ev-file-helpers.c: (get_mime_type_from_uri): Fix a freed memory read. svn path=/trunk/; revision=3472 --- diff --git a/ChangeLog b/ChangeLog index 10d80dc..ce1b602 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-02-16 Christian Persch + + * libdocument/ev-file-helpers.c: (get_mime_type_from_uri): Fix a freed + memory read. + 2009-02-15 Christian Persch * backend/dvi/dvi-document.c: (hsb2rgb): Fix signed/unsigned compiler diff --git a/libdocument/ev-file-helpers.c b/libdocument/ev-file-helpers.c index 7b9a9e9..67e884a 100644 --- a/libdocument/ev-file-helpers.c +++ b/libdocument/ev-file-helpers.c @@ -222,6 +222,7 @@ get_mime_type_from_uri (const gchar *uri, GError **error) GFile *file; GFileInfo *file_info; const gchar *content_type; + gchar *mime_type = NULL; file = g_file_new_for_uri (uri); file_info = g_file_query_info (file, @@ -233,12 +234,12 @@ get_mime_type_from_uri (const gchar *uri, GError **error) return NULL; content_type = g_file_info_get_content_type (file_info); - g_object_unref (file_info); - - if (!content_type) - return NULL; + if (content_type) { + mime_type = g_content_type_get_mime_type (content_type); + } - return g_content_type_get_mime_type (content_type); + g_object_unref (file_info); + return mime_type; } static gchar * -- cgit v0.9.1