grim/guifications3

Parents a9f42a88fa0d
Children c3de904eda25
if we can't create a GfImage from the data over the wire during feed registrator, use our default icon for it.
--- a/gflib-eggdbus/gflib-eggdbus/gfeggdbusserverfeedmanager.c Mon Nov 02 22:06:05 2009 -0600
+++ b/gflib-eggdbus/gflib-eggdbus/gfeggdbusserverfeedmanager.c Mon Nov 02 22:19:42 2009 -0600
@@ -149,8 +149,21 @@
priv = GF_EGGDBUS_SERVER_FEED_MANAGER_GET_PRIVATE(manager);
- if(image_data) {
- guint image_data_sz = 0;
+ /* try to create the image from what we got over the wire */
+ if(image_data && image_data->data.v_byte) {
+ guint image_data_sz = egg_dbus_array_seq_get_size(image_data);
+
+ image = gf_image_new_from_data(image_data->data.v_byte, image_data_sz);
+ }
+
+ /* if that fails, create it using our basic icon */
+ if(!GF_IS_IMAGE(image)) {
+ gchar *filename = g_build_filename(DATADIR, "pixmaps", "gflib", "eggdbus",
+ "feed.png", NULL);
+
+ image = gf_image_new_from_file(filename);
+
+ g_free(filename);
}
/* we create a simple feed for us to wrap */