Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.4
libslab
libslab-document-icon-missing.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File libslab-document-icon-missing.patch of Package libslab
diff -Npur libslab-old/libslab/document-tile.c libslab-new/libslab/document-tile.c --- libslab-old/libslab/document-tile.c 2010-06-23 18:11:17.000000000 +0800 +++ libslab-new/libslab/document-tile.c 2010-06-23 18:10:12.000000000 +0800 @@ -434,10 +434,9 @@ load_image (DocumentTile *tile) gchar *icon_id = NULL; gboolean free_icon_id = TRUE; GnomeDesktopThumbnailFactory *thumbnail_factory; - GIcon *icon; + GIcon *icon = NULL; libslab_checkpoint ("document-tile.c: load_image(): start for %s", TILE (tile)->uri); - if (priv->force_icon_name || ! priv->mime_type) { if (priv->force_icon_name) icon_id = priv->force_icon_name; @@ -455,17 +454,26 @@ load_image (DocumentTile *tile) if (! icon_id) { icon = g_content_type_get_icon (priv->mime_type); g_object_get (icon, "name", &icon_id, NULL); - - g_object_unref (icon); } exit: - priv->image_is_broken = slab_load_image ( - GTK_IMAGE (NAMEPLATE_TILE (tile)->image), GTK_ICON_SIZE_DND, icon_id); + if (icon_id) { + priv->image_is_broken = slab_load_image ( + GTK_IMAGE (NAMEPLATE_TILE (tile)->image), GTK_ICON_SIZE_DND, icon_id); + } else { + if (icon) { + priv->image_is_broken = TRUE; + gtk_image_set_from_gicon (GTK_IMAGE (NAMEPLATE_TILE (tile)->image), icon, GTK_ICON_SIZE_DND); + } else { + priv->image_is_broken = FALSE; + } + } if (free_icon_id && icon_id) g_free (icon_id); + if (icon) + g_object_unref (icon); libslab_checkpoint ("document-tile.c: load_image(): end"); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor