[Xfce4-commits] <tumbler:master> Fix possible segmentation fault in the JPEG thumbnailer.

Jannis Pohlmann noreply at xfce.org
Mon Jan 10 00:22:04 CET 2011


Updating branch refs/heads/master
         to 276ad0c580132861a815dc7b1e0d80af5edecdfd (commit)
       from 68640975a8b03fbda3e56cea7daa976bdd1f2d54 (commit)

commit 276ad0c580132861a815dc7b1e0d80af5edecdfd
Author: Jannis Pohlmann <jannis at xfce.org>
Date:   Mon Jan 10 00:20:54 2011 +0100

    Fix possible segmentation fault in the JPEG thumbnailer.

 NEWS                                        |    4 +
 docs/reference/tumbler/tumbler-sections.txt |  262 +++++++++++++-------------
 plugins/jpeg-thumbnailer/jpeg-thumbnailer.c |    2 +-
 3 files changed, 136 insertions(+), 132 deletions(-)

diff --git a/NEWS b/NEWS
index 522a560..1474559 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,7 @@
+0.1.x
+=====
+- Fix a possible segmentation fault in the JPEG thumbnailer plugin.
+
 0.1.5
 =====
 - Fix a segmentation fault when one of the thumbnailer directories is
diff --git a/docs/reference/tumbler/tumbler-sections.txt b/docs/reference/tumbler/tumbler-sections.txt
index c91df3e..f7e351b 100644
--- a/docs/reference/tumbler/tumbler-sections.txt
+++ b/docs/reference/tumbler/tumbler-sections.txt
@@ -1,18 +1,50 @@
 <SECTION>
-<FILE>tumbler-cache-plugin</FILE>
-TumblerCachePluginPrivate
-TumblerCachePluginClass
-TumblerCachePlugin
-tumbler_cache_plugin_get_default
-tumbler_cache_plugin_get_cache
+<FILE>tumbler-provider-plugin</FILE>
+TumblerProviderPluginClass
+TumblerProviderPlugin
+tumbler_provider_plugin_new
+tumbler_provider_plugin_get_types
 <SUBSECTION Standard>
-TUMBLER_CACHE_PLUGIN
-TUMBLER_IS_CACHE_PLUGIN
-TUMBLER_TYPE_CACHE_PLUGIN
-tumbler_cache_plugin_get_type
-TUMBLER_CACHE_PLUGIN_CLASS
-TUMBLER_IS_CACHE_PLUGIN_CLASS
-TUMBLER_CACHE_PLUGIN_GET_CLASS
+TUMBLER_PROVIDER_PLUGIN
+TUMBLER_IS_PROVIDER_PLUGIN
+TUMBLER_TYPE_PROVIDER_PLUGIN
+tumbler_provider_plugin_get_type
+TUMBLER_PROVIDER_PLUGIN_CLASS
+TUMBLER_IS_PROVIDER_PLUGIN_CLASS
+TUMBLER_PROVIDER_PLUGIN_GET_CLASS
+</SECTION>
+
+<SECTION>
+<FILE>tumbler-thumbnailer-provider</FILE>
+<TITLE>TumblerThumbnailerProvider</TITLE>
+TumblerThumbnailerProvider
+TumblerThumbnailerProviderIface
+tumbler_thumbnailer_provider_get_thumbnailers
+<SUBSECTION Standard>
+TUMBLER_THUMBNAILER_PROVIDER
+TUMBLER_IS_THUMBNAILER_PROVIDER
+TUMBLER_TYPE_THUMBNAILER_PROVIDER
+tumbler_thumbnailer_provider_get_type
+TUMBLER_THUMBNAILER_PROVIDER_GET_IFACE
+</SECTION>
+
+<SECTION>
+<FILE>tumbler-thumbnail</FILE>
+<TITLE>TumblerThumbnail</TITLE>
+TumblerImageData
+TumblerThumbnail
+TumblerThumbnailIface
+tumbler_thumbnail_load
+tumbler_thumbnail_needs_update
+tumbler_thumbnail_save_image_data
+tumbler_thumbnail_save_file
+tumbler_thumbnail_get_flavor
+<SUBSECTION Standard>
+TUMBLER_THUMBNAIL
+TUMBLER_IS_THUMBNAIL
+TUMBLER_TYPE_THUMBNAIL
+tumbler_thumbnail_get_type
+TUMBLER_THUMBNAIL_GET_IFACE
 </SECTION>
 
 <SECTION>
@@ -32,49 +64,23 @@ TUMBLER_PROVIDER_FACTORY_GET_CLASS
 </SECTION>
 
 <SECTION>
-<FILE>tumbler-file-info</FILE>
-TumblerFileInfoClass
-TumblerFileInfo
-tumbler_file_info_new
-tumbler_file_info_load
-tumbler_file_info_get_uri
-tumbler_file_info_get_mime_type
-tumbler_file_info_get_mtime
-tumbler_file_info_needs_update
-tumbler_file_info_get_thumbnail
-tumbler_file_info_array_new_with_flavor
-tumbler_file_info_array_copy
-tumbler_file_info_array_free
-<SUBSECTION Standard>
-TUMBLER_FILE_INFO
-TUMBLER_IS_FILE_INFO
-TUMBLER_TYPE_FILE_INFO
-tumbler_file_info_get_type
-TUMBLER_FILE_INFO_CLASS
-TUMBLER_IS_FILE_INFO_CLASS
-TUMBLER_FILE_INFO_GET_CLASS
-</SECTION>
-
-<SECTION>
-<FILE>tumbler-cache</FILE>
-<TITLE>TumblerCache</TITLE>
-TumblerCache
-TumblerCacheIface
-tumbler_cache_get_default
-tumbler_cache_get_thumbnail
-tumbler_cache_cleanup
-tumbler_cache_delete
-tumbler_cache_copy
-tumbler_cache_move
-tumbler_cache_is_thumbnail
-tumbler_cache_get_flavors
-tumbler_cache_get_flavor
+<FILE>tumbler-thumbnailer</FILE>
+<TITLE>TumblerThumbnailer</TITLE>
+TumblerThumbnailer
+TumblerThumbnailerIface
+tumbler_thumbnailer_create
+tumbler_thumbnailer_get_hash_keys
+tumbler_thumbnailer_get_mime_types
+tumbler_thumbnailer_get_uri_schemes
+tumbler_thumbnailer_supports_hash_key
+tumbler_thumbnailer_array_copy
+tumbler_thumbnailer_array_free
 <SUBSECTION Standard>
-TUMBLER_CACHE
-TUMBLER_IS_CACHE
-TUMBLER_TYPE_CACHE
-tumbler_cache_get_type
-TUMBLER_CACHE_GET_IFACE
+TUMBLER_THUMBNAILER
+TUMBLER_IS_THUMBNAILER
+TUMBLER_TYPE_THUMBNAILER
+tumbler_thumbnailer_get_type
+TUMBLER_THUMBNAILER_GET_IFACE
 </SECTION>
 
 <SECTION>
@@ -114,87 +120,71 @@ TUMBLER_THUMBNAIL_FLAVOR_GET_CLASS
 </SECTION>
 
 <SECTION>
-<FILE>tumbler-thumbnail</FILE>
-<TITLE>TumblerThumbnail</TITLE>
-TumblerImageData
-TumblerThumbnail
-TumblerThumbnailIface
-tumbler_thumbnail_load
-tumbler_thumbnail_needs_update
-tumbler_thumbnail_save_image_data
-tumbler_thumbnail_save_file
-tumbler_thumbnail_get_flavor
-<SUBSECTION Standard>
-TUMBLER_THUMBNAIL
-TUMBLER_IS_THUMBNAIL
-TUMBLER_TYPE_THUMBNAIL
-tumbler_thumbnail_get_type
-TUMBLER_THUMBNAIL_GET_IFACE
-</SECTION>
-
-<SECTION>
-<FILE>tumbler-thumbnailer</FILE>
-<TITLE>TumblerThumbnailer</TITLE>
-TumblerThumbnailer
-TumblerThumbnailerIface
-tumbler_thumbnailer_create
-tumbler_thumbnailer_get_hash_keys
-tumbler_thumbnailer_get_mime_types
-tumbler_thumbnailer_get_uri_schemes
-tumbler_thumbnailer_supports_hash_key
-tumbler_thumbnailer_array_copy
-tumbler_thumbnailer_array_free
+<FILE>tumbler-cache</FILE>
+<TITLE>TumblerCache</TITLE>
+TumblerCache
+TumblerCacheIface
+tumbler_cache_get_default
+tumbler_cache_get_thumbnail
+tumbler_cache_cleanup
+tumbler_cache_delete
+tumbler_cache_copy
+tumbler_cache_move
+tumbler_cache_is_thumbnail
+tumbler_cache_get_flavors
+tumbler_cache_get_flavor
 <SUBSECTION Standard>
-TUMBLER_THUMBNAILER
-TUMBLER_IS_THUMBNAILER
-TUMBLER_TYPE_THUMBNAILER
-tumbler_thumbnailer_get_type
-TUMBLER_THUMBNAILER_GET_IFACE
+TUMBLER_CACHE
+TUMBLER_IS_CACHE
+TUMBLER_TYPE_CACHE
+tumbler_cache_get_type
+TUMBLER_CACHE_GET_IFACE
 </SECTION>
 
 <SECTION>
-<FILE>tumbler-provider-plugin</FILE>
-TumblerProviderPluginClass
-TumblerProviderPlugin
-tumbler_provider_plugin_new
-tumbler_provider_plugin_get_types
+<FILE>tumbler-file-info</FILE>
+TumblerFileInfoClass
+TumblerFileInfo
+tumbler_file_info_new
+tumbler_file_info_load
+tumbler_file_info_get_uri
+tumbler_file_info_get_mime_type
+tumbler_file_info_get_mtime
+tumbler_file_info_needs_update
+tumbler_file_info_get_thumbnail
+tumbler_file_info_array_new_with_flavor
+tumbler_file_info_array_copy
+tumbler_file_info_array_free
 <SUBSECTION Standard>
-TUMBLER_PROVIDER_PLUGIN
-TUMBLER_IS_PROVIDER_PLUGIN
-TUMBLER_TYPE_PROVIDER_PLUGIN
-tumbler_provider_plugin_get_type
-TUMBLER_PROVIDER_PLUGIN_CLASS
-TUMBLER_IS_PROVIDER_PLUGIN_CLASS
-TUMBLER_PROVIDER_PLUGIN_GET_CLASS
+TUMBLER_FILE_INFO
+TUMBLER_IS_FILE_INFO
+TUMBLER_TYPE_FILE_INFO
+tumbler_file_info_get_type
+TUMBLER_FILE_INFO_CLASS
+TUMBLER_IS_FILE_INFO_CLASS
+TUMBLER_FILE_INFO_GET_CLASS
 </SECTION>
 
 <SECTION>
-<FILE>tumbler-thumbnailer-provider</FILE>
-<TITLE>TumblerThumbnailerProvider</TITLE>
-TumblerThumbnailerProvider
-TumblerThumbnailerProviderIface
-tumbler_thumbnailer_provider_get_thumbnailers
+<FILE>tumbler-cache-plugin</FILE>
+TumblerCachePluginPrivate
+TumblerCachePluginClass
+TumblerCachePlugin
+tumbler_cache_plugin_get_default
+tumbler_cache_plugin_get_cache
 <SUBSECTION Standard>
-TUMBLER_THUMBNAILER_PROVIDER
-TUMBLER_IS_THUMBNAILER_PROVIDER
-TUMBLER_TYPE_THUMBNAILER_PROVIDER
-tumbler_thumbnailer_provider_get_type
-TUMBLER_THUMBNAILER_PROVIDER_GET_IFACE
-</SECTION>
-
-<SECTION>
-<FILE>tumbler-enum-types</FILE>
-TUMBLER_TYPE_THUMBNAIL_FORMAT
-TumblerThumbnailFormat
-tumbler_thumbnail_format_get_type
-TUMBLER_TYPE_COLORSPACE
-TumblerColorspace
-tumbler_colorspace_get_type
+TUMBLER_CACHE_PLUGIN
+TUMBLER_IS_CACHE_PLUGIN
+TUMBLER_TYPE_CACHE_PLUGIN
+tumbler_cache_plugin_get_type
+TUMBLER_CACHE_PLUGIN_CLASS
+TUMBLER_IS_CACHE_PLUGIN_CLASS
+TUMBLER_CACHE_PLUGIN_GET_CLASS
 </SECTION>
 
 <SECTION>
-<FILE>tumbler</FILE>
-TUMBLER_INSIDE_TUMBLER_H
+<FILE>tumbler-glib-extensions</FILE>
+TUMBLER_ADD_INTERFACE
 </SECTION>
 
 <SECTION>
@@ -205,11 +195,6 @@ TumblerErrorEnum
 </SECTION>
 
 <SECTION>
-<FILE>tumbler-util</FILE>
-tumbler_util_get_supported_uri_schemes
-</SECTION>
-
-<SECTION>
 <FILE>tumbler-config</FILE>
 TUMBLER_MAJOR_VERSION
 TUMBLER_MINOR_VERSION
@@ -224,6 +209,16 @@ G_GNUC_WARN_UNUSED_RESULT
 </SECTION>
 
 <SECTION>
+<FILE>tumbler</FILE>
+TUMBLER_INSIDE_TUMBLER_H
+</SECTION>
+
+<SECTION>
+<FILE>tumbler-util</FILE>
+tumbler_util_get_supported_uri_schemes
+</SECTION>
+
+<SECTION>
 <FILE>tumbler-marshal</FILE>
 tumbler_marshal_VOID__STRING_INT_STRING
 tumbler_marshal_VOID__UINT_STRING_INT_STRING
@@ -234,7 +229,12 @@ tumbler_marshal_VOID__UINT_POINTER_INT_STRING
 </SECTION>
 
 <SECTION>
-<FILE>tumbler-glib-extensions</FILE>
-TUMBLER_ADD_INTERFACE
+<FILE>tumbler-enum-types</FILE>
+TUMBLER_TYPE_THUMBNAIL_FORMAT
+TumblerThumbnailFormat
+tumbler_thumbnail_format_get_type
+TUMBLER_TYPE_COLORSPACE
+TumblerColorspace
+tumbler_colorspace_get_type
 </SECTION>
 
diff --git a/plugins/jpeg-thumbnailer/jpeg-thumbnailer.c b/plugins/jpeg-thumbnailer/jpeg-thumbnailer.c
index 2d55046..f662c77 100644
--- a/plugins/jpeg-thumbnailer/jpeg-thumbnailer.c
+++ b/plugins/jpeg-thumbnailer/jpeg-thumbnailer.c
@@ -679,7 +679,7 @@ jpeg_thumbnailer_create (TumblerAbstractThumbnailer *thumbnailer,
   TumblerThumbnail       *thumbnail;
   struct stat             statb;
   const gchar            *uri;
-  GdkPixbuf              *pixbuf;
+  GdkPixbuf              *pixbuf = NULL;
   gboolean                streaming_needed = TRUE;
   JOCTET                 *content;
   GError                 *error = NULL;



More information about the Xfce4-commits mailing list