diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | src/bookmarks/ephy-topic-action.c | 36 |
2 files changed, 26 insertions, 16 deletions
@@ -1,3 +1,9 @@ +2003-04-09 Marco Pesenti Gritti <marco@it.gnome.org> + + * src/bookmarks/ephy-topic-action.c: (build_topics_menu): + + We cant assume the favicon is already in the cache. + 2003-04-09 Xan Lopez <xan@masilla.org> * data/.cvsignore: diff --git a/src/bookmarks/ephy-topic-action.c b/src/bookmarks/ephy-topic-action.c index 0d5d2557b..94e7c5e30 100644 --- a/src/bookmarks/ephy-topic-action.c +++ b/src/bookmarks/ephy-topic-action.c @@ -145,7 +145,7 @@ build_topics_menu (EphyTopicAction *action, GtkWidget *button) GPtrArray *children; int i; EphyNode *node; - EphyFaviconCache *cache; + EphyFaviconCache *cache; node = ephy_node_get_from_id (action->priv->topic_id); @@ -160,28 +160,32 @@ build_topics_menu (EphyTopicAction *action, GtkWidget *button) for (i = 0; i < children->len; i++) { EphyNode *kid; - const char *icon_location; + const char *icon_location; const char *title; kid = g_ptr_array_index (children, i); - icon_location = ephy_node_get_property_string - (kid, EPHY_NODE_BMK_PROP_ICON); + icon_location = ephy_node_get_property_string + (kid, EPHY_NODE_BMK_PROP_ICON); title = ephy_node_get_property_string (kid, EPHY_NODE_BMK_PROP_TITLE); - item = gtk_image_menu_item_new_with_label (title); - if (icon_location) { - GdkPixbuf *icon; - GtkWidget *image; - icon = ephy_favicon_cache_get (cache, icon_location); - g_assert (icon != NULL); - image = gtk_image_new_from_pixbuf (icon); - gtk_widget_show (image); - gtk_image_menu_item_set_image - (GTK_IMAGE_MENU_ITEM (item), image); - g_object_unref (icon); - } + item = gtk_image_menu_item_new_with_label (title); + if (icon_location) + { + GdkPixbuf *icon; + GtkWidget *image; + + icon = ephy_favicon_cache_get (cache, icon_location); + if (icon != NULL) + { + image = gtk_image_new_from_pixbuf (icon); + gtk_widget_show (image); + gtk_image_menu_item_set_image + (GTK_IMAGE_MENU_ITEM (item), image); + g_object_unref (icon); + } + } g_object_set_data (G_OBJECT (item), "node", kid); g_signal_connect (item, "activate", |