diff options
author | Iain Holmes <iain@src.gnome.org> | 2000-10-11 07:58:49 +0800 |
---|---|---|
committer | Iain Holmes <iain@src.gnome.org> | 2000-10-11 07:58:49 +0800 |
commit | fcfe968ab56dfa2493265a83a1227c2849328a63 (patch) | |
tree | b164ec5e9bdb494b8ce99bd5463184b079f6cfec /composer/e-icon-list.c | |
parent | 169085b6806eac8a49ab32ee6b7aba6c530a39ea (diff) | |
download | gsoc2013-evolution-fcfe968ab56dfa2493265a83a1227c2849328a63.tar gsoc2013-evolution-fcfe968ab56dfa2493265a83a1227c2849328a63.tar.gz gsoc2013-evolution-fcfe968ab56dfa2493265a83a1227c2849328a63.tar.bz2 gsoc2013-evolution-fcfe968ab56dfa2493265a83a1227c2849328a63.tar.lz gsoc2013-evolution-fcfe968ab56dfa2493265a83a1227c2849328a63.tar.xz gsoc2013-evolution-fcfe968ab56dfa2493265a83a1227c2849328a63.tar.zst gsoc2013-evolution-fcfe968ab56dfa2493265a83a1227c2849328a63.zip |
Handle missing icons better.
svn path=/trunk/; revision=5827
Diffstat (limited to 'composer/e-icon-list.c')
-rw-r--r-- | composer/e-icon-list.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/composer/e-icon-list.c b/composer/e-icon-list.c index 18790784d1..bdff6c5abe 100644 --- a/composer/e-icon-list.c +++ b/composer/e-icon-list.c @@ -982,6 +982,11 @@ icon_new_from_pixbuf (EIconList *eil, GdkPixbuf *im, else icon->icon_filename = NULL; + if (im == NULL) + im = gdk_pixbuf_new_from_xpm_data ((const char**) bad_icon_xpm); + else + gdk_pixbuf_ref (im); + icon->image = GNOME_CANVAS_PIXBUF (gnome_canvas_item_new ( group, gnome_canvas_pixbuf_get_type (), @@ -991,6 +996,7 @@ icon_new_from_pixbuf (EIconList *eil, GdkPixbuf *im, "height", (double) gdk_pixbuf_get_height (im), "pixbuf", im, NULL)); + gdk_pixbuf_unref (im); icon->text = GNOME_ICON_TEXT_ITEM (gnome_canvas_item_new ( group, @@ -1139,7 +1145,6 @@ e_icon_list_insert_pixbuf (EIconList *eil, int pos, GdkPixbuf *im, g_return_if_fail (eil != NULL); g_return_if_fail (IS_EIL (eil)); - g_return_if_fail (im != NULL); icon = icon_new_from_pixbuf (eil, im, icon_filename, text); icon_list_insert (eil, pos, icon); @@ -1187,7 +1192,6 @@ e_icon_list_append_pixbuf (EIconList *eil, GdkPixbuf *im, g_return_val_if_fail (eil != NULL, -1); g_return_val_if_fail (IS_EIL (eil), -1); - g_return_val_if_fail (im != NULL, -1); icon = icon_new_from_pixbuf (eil, im, icon_filename, text); return icon_list_append (eil, icon); |