diff options
Diffstat (limited to 'libcaja-private/caja-icon-info.c')
-rw-r--r-- | libcaja-private/caja-icon-info.c | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/libcaja-private/caja-icon-info.c b/libcaja-private/caja-icon-info.c index d5bd542e..0adbd90c 100644 --- a/libcaja-private/caja-icon-info.c +++ b/libcaja-private/caja-icon-info.c @@ -425,14 +425,14 @@ caja_icon_info_lookup (GIcon *icon, } filename = gtk_icon_info_get_filename (gtkicon_info); - - /* 96_no-null-in-g-str-hash.patch from ubuntu natty nautilus - https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/718098 */ if (filename == NULL) { +#if GTK_CHECK_VERSION (3, 0, 0) + g_object_unref (gtkicon_info); +#else gtk_icon_info_free (gtkicon_info); +#endif return caja_icon_info_new_for_pixbuf (NULL); } - /* patch end */ lookup_key.filename = (char *)filename; lookup_key.size = size; @@ -440,7 +440,11 @@ caja_icon_info_lookup (GIcon *icon, icon_info = g_hash_table_lookup (themed_icon_cache, &lookup_key); if (icon_info) { +#if GTK_CHECK_VERSION (3, 0, 0) + g_object_unref (gtkicon_info); +#else gtk_icon_info_free (gtkicon_info); +#endif return g_object_ref (icon_info); } @@ -449,7 +453,11 @@ caja_icon_info_lookup (GIcon *icon, key = themed_icon_key_new (filename, size); g_hash_table_insert (themed_icon_cache, key, icon_info); +#if GTK_CHECK_VERSION (3, 0, 0) + g_object_unref (gtkicon_info); +#else gtk_icon_info_free (gtkicon_info); +#endif return g_object_ref (icon_info); } @@ -465,7 +473,11 @@ caja_icon_info_lookup (GIcon *icon, if (gtk_icon_info != NULL) { pixbuf = gtk_icon_info_load_icon (gtk_icon_info, NULL); +#if GTK_CHECK_VERSION (3, 0, 0) + g_object_unref (gtk_icon_info); +#else gtk_icon_info_free (gtk_icon_info); +#endif } else { |